Shop OBEX P1 Docs P2 Docs Learn Events
CPLD based VGA and memory controller. Respinned ! — Parallax Forums

CPLD based VGA and memory controller. Respinned !

AleAle Posts: 2,363
edited 2009-10-26 08:30 in Propeller 1
A few days ago I said that I was working on a CPLD based VGA and memory controller for the propeller. The idea is that the frame buffer memory is handled by the CPLD and the propeller can read and write it and takes care of generating the sync, pixel clock and enable signals. The pixel clock has to be two times the actual pixel clock.
It has a 512Kx8 15 ns SRAM
So possible modes are: 320x240, 512x384, 640x480 and 800x600 (maybe) all of them with 256 simultaneous colors using a 3:3:2 R:G:B DAC.

Interlaced memory and video access to the SRAM is transparently done with the CPLD.

(The old single CPLD board is gone) The new board uses 2 CPLDs and is shown below. A Wiki page has also been created at propeller.wikispaces.com/Propeller_CPLD

Enjoy

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Visit some of my articles at Propeller Wiki:
MATH on the propeller propeller.wikispaces.com/MATH
pPropQL: propeller.wikispaces.com/pPropQL
pPropQL020: propeller.wikispaces.com/pPropQL020
OMU for the pPropQL/020 propeller.wikispaces.com/OMU

Post Edited (Ale) : 10/14/2009 10:07:43 AM GMT
800 x 824 - 82K
800 x 835 - 135K
«1

Comments

  • AleAle Posts: 2,363
    edited 2009-10-02 10:20
    Here are the files so far.
    The CPLD part is devided into 2 CPLDs, the bigger one (XC9572) has the address control portion and the small one handles the data bus.

    The big CPLD soft is shown here in Verilog. Together with a simulation.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU

    Post Edited (Ale) : 10/14/2009 9:53:36 AM GMT
    1116 x 402 - 30K
  • Toby SeckshundToby Seckshund Posts: 2,027
    edited 2009-10-02 12:12
    I used the 9536/72s for my simple learning of CPLDs. It is surprising how they fill up so quickly. Will the design fit if you let the software choise the pin layout (not that it would suit your PCB). There was a 95108, but they seem to be rare now. Coolrunner - here we come.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Style and grace : Nil point
  • AleAle Posts: 2,363
    edited 2009-10-02 12:30
    The CPLDs are too expensive beyond the '144. Sadly most FPGAs need 1.2 V and do not come in friendly PLCC packages :-(.

    I'm playing with some simple memory controller with read and write autoincrement. While it does not require much registers it does logic. Work in progress.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • BTXBTX Posts: 674
    edited 2009-10-02 12:53
    Hi Ale.
    Although I'm not an expert on CPLD or FPGA's I'm doing exactly the same at this momment, but just using Altera line.
    I 'm trying the design it with my DE2 board, and I found that the full controller feets into the CPLD quiet pretty.
    I calculated that i will need about 400 or 500 LE for all project and it's fine for a EPM1270 CPLD.
    How many LE's have the CPLD that you're using ??
    Mines pretends to be 640*480 24bit true color, maybe using 3*512KBx8bit RAM and a ADV7123 DAC for VGA out, & parallel comunication with the pchip in 8 bit bus.
    My problem at this momment is the four layers PCB cost, somebody here ask me $78 (USD) each one, for a minmun quantity of 20 pcs, they are crazy !!!

    I hope you get it early, my purpose of this, is not for sale at this momment, instead for a customer work.
    I would choose for your first option.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Regards.

    Alberto.

    Envio editado por (BTX) : 10/2/2009 12:58:47 PM GMT
  • AleAle Posts: 2,363
    edited 2009-10-02 13:20
    Alberto:

    4 Layers ? 78 USD each for 20 pcs ? It looks expensive. Are you sure you can not get it down to 2 layers ?. I can get 22.5 Euro each board for 25 pieces, plus 19 % VAT smile.gif... and no cheap shop: made in Germany!
    I'd love a board like that... Even if it is not full color, 16 bit would do fine.

    I think your CPLD is a tad bigger than the one I used. If the 980 macrocells the y cite are right... well that is more than 10 times this puny little 72 mc.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • BTXBTX Posts: 674
    edited 2009-10-02 13:34
    Yes, Ale. ...I'm thinking to try with a 2 layers board too.
    Hey...chose another CPLD,and do the complete board in SMD, QFP for the pchip, why not ?
    Your board looks amazing anyway.

    PS: For 16 bit color, don't you need a 16 bit data wide SRAM better ?? just one posedge clk to get a RGB pixel data.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Regards.

    Alberto.
  • mctriviamctrivia Posts: 3,772
    edited 2009-10-02 13:40
    BTX I will soon be building a 4 layer board with MAX II 1270. 1Gbit RAM and VGA output. Boards will cost me $480 at present I get about 100 boards for that but I am probably going to make my board a little biger.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5

    Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.

    Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
  • AleAle Posts: 2,363
    edited 2009-10-02 13:55
    BTX: I made a one layer PCB using photo-sensible PCB. That's the second one I do and was not better than the first one :-(. If I can get this process to work reliably I'll try all smd and fine pitch (0.5 mm), I mean the only parts left are the prop and the VGA connector... I do not want to buy many more parts, I have plenty of unused ones (like loads of 512kx8 5V SRAMs) and the idea was to get this working in a few days and try so ideas on it. I'm also learning Verilog so it is a good exercise. If I go for a bigger CPLD it will be a FPGA instead, they are bigger and more cost effective in the same package. The altera units are nice but I think a XC3S50AN has more or less the same logic density at a fraction of the cost, but needs those extra 1.2V).

    A 16 bit SRAM is the way to go for 16 bit color. I agress but only if you get a 512kx16. I think 512kx8 are cheaper but they use more board.

    mctrivia: Adding VGA makes your board much more interesting!, especially if you try for the price range I mentioned, anything more expensive is not for hobby :-(.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • mctriviamctrivia Posts: 3,772
    edited 2009-10-02 14:00
    Well $50-$75 can't happen. I can reduce price by only installing 1 RAM chip instead of the 2 I am planning to use for myself.

    I would like to get DVI working but don't think that 2 feasible at this time.

    If you have a reflow oven or toaster oven I can sell blank PCB also They are not to hard to assemble.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5

    Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.

    Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
  • Dr_AculaDr_Acula Posts: 5,484
    edited 2009-10-02 14:03
    Interlaced memory and video access to the SRAM. (memory access through an 8 bit bus with some control signals).

    Can you do that?!

    Sounds a very interesting concept. The problem with the standard prop is you can have VGA and slow ram, or you can have no VGA and fast (direct access to all address/data pins) ram. But interlacing - well that opens up all sorts of possibilities. I presume this is only possible in CPLD - not using discrete logic chips?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.smarthome.viviti.com/build
  • mctriviamctrivia Posts: 3,772
    edited 2009-10-02 14:05
    anything that can be done in cpld can be done in discrete logic. just may cost you a fortune for the chips since 1 cpld can replicate hundreads of logic gates.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5

    Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.

    Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
  • AleAle Posts: 2,363
    edited 2009-10-02 14:07
    mctrivia: I have access to a real reflow oven wink.gif, the wonders of being friends with the right people wink.gif.
    I do not have experience with Altera tools or chips, but I think a FPGA is cheaper with similar density to the CPLD you want to use but they consume more energy, are not instant on (does it matter ?) and may need an extra voltage and cost a fourth of the price or so.

    Dr. Acula: It is a matter of right memory speed (< 15 ns) and CPLD density.

    Let's see how much I can squeeze.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • mctriviamctrivia Posts: 3,772
    edited 2009-10-02 14:12
    the max2 actually is an FPGA but they added internal flash memory so they call it a CPLD.

    The bigest difference is the FPGAs need a second device to load the programming into them at startup.

    yes the EPM1270M256C5N is expensive at $33 but it requires no external parts to support it(other then a lot of bipass caps).

    It is a 1.8V core voltage but the RAM i am using is also 1.8V so I need the lower voltage rail anyways.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5

    Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.

    Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
  • LeonLeon Posts: 7,620
    edited 2009-10-02 14:36
    I'd have used a TQFP144 EPM570 or EPM1270, they are pin-compatible. They have 440/980 macrocell equivalents compared to 72 in the XC9572. They cost more than the XC9572, of course.

    Leon

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Amateur radio callsign: G1HSM
    Suzuki SV1000S motorcycle
  • mctriviamctrivia Posts: 3,772
    edited 2009-10-02 14:40
    The MBGA 1270 570 are pin compatible also but the 570 can only be purchased from digikey in large quantities which is why I jumped to 1270.

    I find BGA is much easier to hand assemble then large quantity TQFP chips. The MBGA package is a little finer pitch then I would like but that shouldn't be to much of a problem with proper planning in the PCB design.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5

    Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.

    Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
  • BradCBradC Posts: 2,601
    edited 2009-10-02 14:51
    mctrivia said...

    If you have a reflow oven or toaster oven I can sell blank PCB also They are not to hard to assemble.

    I'm interested in how you manage to get the results you do. Do you stencil or hand apply the solder paste?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    lt's not particularly silly, is it?
  • mctriviamctrivia Posts: 3,772
    edited 2009-10-02 14:55
    i use a stencil on my prop modules to solder the qfn chips and all parts on the top. the botom half i do by hand. i could use a stencil but i would have to build a rig to hold it flat.

    for bga chips no stencil or solder is needed. the pads are solder. you only need to put flux on the board place the chip in the right place(which if you use small vias under each pin you can feel where the right place is) and reflow it.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5

    Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.

    Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
  • Bill HenningBill Henning Posts: 6,445
    edited 2009-10-02 17:37
    That easy?

    I have been afraid of using QFN and BGA due to not being able to see the solder joints... but if it is that easy... hmm... thanks for the hint!

    I am looking forward to seeing your new design - I liked the old one, but I could not justify putting $250 modules into Morpheus [noparse]:)[/noparse]
    mctrivia said...
    i use a stencil on my prop modules to solder the qfn chips and all parts on the top. the botom half i do by hand. i could use a stencil but i would have to build a rig to hold it flat.

    for bga chips no stencil or solder is needed. the pads are solder. you only need to put flux on the board place the chip in the right place(which if you use small vias under each pin you can feel where the right place is) and reflow it.
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
    Morpheus & Mem+dual Prop SBC w/ 512KB kit $119.95, 2MB memory IO board kit $89.95, both kits $189.95
    www.mikronauts.com - my site 6.250MHz custom Crystals for running Propellers at 100MHz
    Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
  • mctriviamctrivia Posts: 3,772
    edited 2009-10-02 17:44
    Bga are easy. That is why I am trying to do entirely in bga.
    Pcb are a little more because of tight width spacing requirements.

    If you give me header info I can try to make my module directly compatible with it.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5

    Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.

    Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
  • Bill HenningBill Henning Posts: 6,445
    edited 2009-10-02 17:57
    Thanks, it would be great if we were compatible!

    That way people could use your module to add memory to Prop#1 on Morpheus, and also to the Prop on my Propteus board...

    There are two 10 pin female headers with standard Parallax Protoboard pinout:

    EXP1=(+3.3,GND,P0-P7)

    EXP2=(+3.3,GND,P8-P15)

    They are mounted on the same place on Morpheus and Propteus.

    I'll send you exact dimensions later today.

    All of P0-P15 are potentially available on Propteus, and P0-P11 can be used on Morpheus (with the 23K256 removed, as it would not be needed with a big memory module installed).

    I'll make sure that Largos will support your board.

    I've also been thinking of a SDRAM/CPLD module, but I won't have time to attack it for quite a while - besides, you are thinking bigger (EPM1270 + mobile SDRAM) than I was.
    mctrivia said...
    Bga are easy. That is why I am trying to do entirely in bga.
    Pcb are a little more because of tight width spacing requirements.

    If you give me header info I can try to make my module directly compatible with it.
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
    Morpheus & Mem+dual Prop SBC w/ 512KB kit $119.95, 2MB memory IO board kit $89.95, both kits $189.95
    www.mikronauts.com - my site 6.250MHz custom Crystals for running Propellers at 100MHz
    Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
  • Bill HenningBill Henning Posts: 6,445
    edited 2009-10-02 18:01
    Nice looking prototype... can I suggest a minor change?

    Right now it looks like you have +3.3,P23-P16,GND

    If you changed that to P23-P16,GND,+3.3 you would be compatible with: Parallax Proto boards, ucontroller.com and my expansion headers...
    Ale said...
    A few days ago I said that I was working on a CPLD based VGA and memory controller for the propeller.
    512Kx8 SRAM
    VGA 640x480 @ 25 MHz pixel clock (only mode available)
    Interlaced memory and video access to the SRAM. (memory access through an 8 bit bus with some control signals).

    I built a small board and today tried to fit the design into the CPLD: it does not fit :-(. And it was not even the full thing !. I knoew it was a tight fit but I hoped that the simplicity would have helped smile.gif

    So I have two options:
    - I redo the board with a bigger CPLD (or divide it in two or three)
    - I go for the memory controller only version and the VGA signal will be generated by the propeller and just passed trhough the CPLD.

    I'll post here the files so far. I can also add it to the propeller wiki... why not.
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
    Morpheus & Mem+dual Prop SBC w/ 512KB kit $119.95, 2MB memory IO board kit $89.95, both kits $189.95
    www.mikronauts.com - my site 6.250MHz custom Crystals for running Propellers at 100MHz
    Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
  • AleAle Posts: 2,363
    edited 2009-10-02 19:02
    thanks Bill, I'll make that change.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • Cluso99Cluso99 Posts: 18,069
    edited 2009-10-03 02:15
    Ale: Have a look at the Spartan 3A. IIRC the 200 version was about $11. My kit cost $40 but I see Avnet now want $50 - still cheap.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Links to other interesting threads:

    · Home of the MultiBladeProps: TriBlade,·RamBlade, RetroBlade,·TwinBlade,·SixBlade, website
    · Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
    · Prop Tools under Development or Completed (Index)
    · Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80) , MoCog (6809)
    · Search the Propeller forums·(uses advanced Google search)
    My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
  • AleAle Posts: 2,363
    edited 2009-10-03 05:22
    Cluso, it is the way I'm heading. But for simplicity and so on I wanted to do the board myself and use some 5V parts that I have laying around. Which device is not a big concern to me if I can use it to test the concept smile.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • Cluso99Cluso99 Posts: 18,069
    edited 2009-10-03 06:33
    Certainly Ale. I am interested in your results. Unfortunately/Fortunately (depending on how you look at it) I got sidetracked onto the TriBlade and then ZiCog and have not had the time to return to my FPGA. I just love the prop and it has given me so much relief from other stresses in life smile.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Links to other interesting threads:

    · Home of the MultiBladeProps: TriBlade,·RamBlade, RetroBlade,·TwinBlade,·SixBlade, website
    · Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
    · Prop Tools under Development or Completed (Index)
    · Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80) , MoCog (6809)
    · Search the Propeller forums·(uses advanced Google search)
    My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
  • Toby SeckshundToby Seckshund Posts: 2,027
    edited 2009-10-03 08:49
    I registered fo the Ver 11 Xilinx software, but ended up using the Ver 9.2. I then had a rep come around trying to sell me their Vertex range. Having struggled with the comlexities of the 95xx series, I am sure that the Vertex6 would just be so simple. NOT!

    You wouldn't get one of those on a eval board for $50 either (I did ask for some goodies, got none. If only I had something to do with students, apart from mending their trails of disasters. Hey-Ho.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Style and grace : Nil point
  • AleAle Posts: 2,363
    edited 2009-10-03 10:34
    Toby: While I'd love to do some work on (any) a Virtex device, I hardly know HDLs as to get most of the simple CPLDs. I think these devices provide so much that you can get loads of (fun) work done. I'm deciding now if I either use a Spartan 2 (I know is old, discontinued but 5V tolerant) or a newer Spartan 3. They are sort of the same price and have the same _nice_ qfp100/144 packages. That needs a well-done PCB. Let's see.

    The WebISE soft is really not nice (It remembers me to the "M$ Programmer's workbench") but the newest version has some more friendliness: It dos not crash anymore in the schematic editor when you click on the background after moving a wire!

    I have several starter kits that lay (sort of) unused on my desk, so I'd prefer not to get another one unless it is free wink.gif.

    I'll go back to you when I get some work done.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • heaterheater Posts: 3,370
    edited 2009-10-03 11:29
    I might dare to suggest that instead of using CPLD/FPGA for your glue logic have a look at using an XMOS chip.
    There, I said it.
    I have not looked so hard into this but they are cheap (starting at 8 dollars) and small and look like they have enough oomph and pins and threads etc to take care of RAM glue logic and VGA generation. With the bigger chips there is capacity enough left over to also provide an Ethernet interface and IP stack, and/or USB, and/or whatever the Prop is not quite up to. For free almost comes the holy grail of multiple high speed Prop to Prop links.

    I'm not saying the average Prop user should be exposed to the XMOS, it should just be there providing whatever services. Like any other Ethernet, USB, random gizmo chip.

    I'd like to see RAM interfaced to the Prop using 8 pins multiplexed for address and data, maybe only two pins for control. For example a byte write to a 16Mb RAM space could look like this:

        xor    outa, wr_pin     'Transition indicate a write operation
        mov   outa, address   'Low 8 bits of address out in low pins
        shr    outa, #8          'Middle 8 bits address
        shr    outa, #8          'High 8 bits address
        mov   outa, data_byte ' Output the data byte
    
    



    From the edge on wr_pin the external device starts clocking in the address and then the data.
    Read along the same lines.
    Access to Ethernet or whatever functionality would be through the memory address space rather than using up more Prop pins.
    Leaves loads of free pins on the Prop to do what they were designed for.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • LeonLeon Posts: 7,620
    edited 2009-10-03 13:00
    I suggested using an XMOS chip as an I/O device for a Propeller when the former was first announced. Ale has VGA running on one, but the resolution is limited by the available RAM. External RAM could be used, of course.

    Leon

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Amateur radio callsign: G1HSM
    Suzuki SV1000S motorcycle

    Post Edited (Leon) : 10/3/2009 1:07:10 PM GMT
  • AleAle Posts: 2,363
    edited 2009-10-03 15:31
    I just lost my beautiful FPGA+XMOS chip PCB design :-(. Thanks to Vbox and some mistake on my part :-(

    Using an XMOS to provide video/memory to the propeller... is not what I want. Not that it can't be done. I mean it is quite easy but beyond the point. Adding SDRAM to the XMOS (already done, not by me) and using it for VGA would be more appealing.... but having a propeller in the mix brings... nothing. The XMOS has better IO, more performance, memory and nice links integrated in the assembly language.

    I'll keep looking for a solution here.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
Sign In or Register to comment.