+ Reply to Thread
Page 1 of 32 1234511 ... LastLast
Results 1 to 20 of 632

Thread: Propeller II: Emulation of the P2 on DE0-NANO & DE2-115 FPGA boards

  1. #1
    Cluso99's Avatar
    Location
    Sydney/Brisbane Australia or 'sailing on the high seas'
    Posts
    10,169

    Default Propeller II: Emulation of the P2 on DE0-NANO & DE2-115 FPGA boards

    Chip has released the binary for:
    - a 1 cog Propeller II emulation (with restrictions) that runs on a Terasic DE0-NANO FPGA board.
    - a 5 cog Propeller II emulation (with restrictions) that runs on a Terasic DE2-115 FPGA board.

    19 April 2014:
    About a month ago, the P2 hit a considerable snag with power being way too high.

    New Proposed Specs
    (from my recollection)
    * 512KB Hub Ram, 128-bit quad access
    * 2KB Cog Ram, 128-bit quad access
    * 16 Cogs, 2 clock instructions @ 200MHz = 100 MIPs
    * Hubexec support (details still being decided)
    * Some form of Smart I/O.

    There has been quite a lot of discussion (about the changes) here
    http://forums.parallax.com/showthrea...Propeller-Chip
    The current proposed P2 (sometimes called P1+ or P16+) Proposed Instruction Set is here
    http://forums.parallax.com/showthrea...=1#post1260747
    My instruction summary is here
    http://forums.parallax.com/showthrea...=1#post1260872
    Chip posted an ALU Timing Diagram
    http://forums.parallax.com/showthrea...=1#post1261426

    Prior to this snag, there were two P2 FPGA code postings. These were interim released without full documentation.
    Dates 19 Mar and 24 Mar 2014. If you really want to try them, please search the P2 forums.

    The following is now out of date...
    Propeller Overview

    The Propeller II is a new 8 core 32bit RISC microcontroller to be released shortly by Parallax http://www.parallaxsemiconductor.com/
    This follows on from the current 8 core P8X32A propeller microcontroller.
    The propeller chips utilise soft (intelligent) peripherals, so that the one chip can have many different peripherals that can even be dynamically changed on the fly. The propeller utilises a large SRAM rather than FLASH making software changes on the fly a reality.

    Way to go Chip & Parallax!

    This thread is for discussions specific to the P2 emulations on these FPGA boards (Altera Cyclone IV FPGAs).

    I try to keep this post updated with the latest information and links, so please let me know if something needs updating here.



    Update 28 Jan 2014:
    The latest code (FPGA, pnut.exe, sample programs, documents) are all in one zip with info on this post
    http://forums.parallax.com/showthrea...=1#post1237960
    Beware the instruction set has major changes - even better than the last impressive changes - Fantastic work Chip!

    Update 26 Nov 2013:
    The latest code (FPGA, pnut.exe, sample programs, documents) are all in one zip with info on this post
    http://forums.parallax.com/showthrea...=1#post1221918
    Beware the instruction set has changed - really impressive changes - Congratulations Chip!

    Update 1 Oct 2013:
    The latest code (FPGA, pnut.exe, documents) are all in one zip with info on this post
    http://forums.parallax.com/showthrea...=1#post1210517
    The Monitor Entry point now seems to be $700 (was$70C) - thanks ozpropdev
    Warning for DE0 Users:
    This code only works using the Parallax expansion board.
    A shunt/jumper on JP3 pins 3 to 5 on the DE0 board.
    The SPI Flash must be removed from the socket on the expansion board.



    Downloads...
    DE0-NANO & DE2-115 & PNUT.EXE:
    The latest (as of 5 Dec 2012) download from Chip for both FPGA boards and pnut.exe is updated in this post (#106)...
    http://forums.parallax.com/showthrea...=1#post1146196
    The latest reference is from post (#193)...
    http://forums.parallax.com/showthrea...=1#post1147388
    2013/1/10: Latest DE2 emulation with onboard SD pins connected (see this post and the following 2)
    http://forums.parallax.com/showthrea...=1#post1156757
    A new FPGA download (10 Apr 2013) for both the DE0 & DE2 for accessing the SDRAM is here (the DE2 is a few posts earlier), together with P2 PASM example code for the SDRAM..
    http://forums.parallax.com/showthrea...=1#post1176286


    DE0-NANO:
    (see post #2)

    DE2-115:
    (see post #5)

    Getting started on your DE0-NANO / DE2-115 board...
    Both downloads include an example spin program. This has setup instructions for the FPGA boards at the top of the file.

    Edit & Compile...
    Both downloads contain the PNUT.exe which is similar to the PropTool - it has an editor and P2 compiler.

    P2 Instruction Set & P2 Details (preliminary)...
    The latest instruction set details from Chip are available throughout this thread and then following on in this thread (from 9 December 2012) "The unofficial P2 documentation project". Peter Jakaki and Seairth (and others) have converted this information to google docs, including nice formatting and a web-page version...
    The web-page version of the document is viewable without any signing in required
    If you want to contribute then go to the Google document and request sharing.
    I have an Excel Spreadsheet summary of the P2 instruction set. For now, scan from the end of the thread backwards for the latest post (it is a zip file due to forum restrictions).

    P2 Monitor Rom...
    Doug (potatohead) has documented using the Monitor ROM present in the P2...
    http://forums.parallax.com/entry.php...plete-(for-now)

    P2loader by David Betz
    This is a Propeller II binary downloader and is available here...
    http://forums.parallax.com/showthrea...e-Propeller-II

    P2 PropTerminal by Andy
    Andy has a P2 version of his PropTerminal program available here...
    http://forums.parallax.com/showthrea...=1#post1150859

    PFTH (P2 FORTH) by Dave Hein
    Dave Hein has ported PFTH 1.03 (Prop FORTH) to run on the P2. It has been tested on the DE2-115 but not the DE0-nano yet. It is available here...
    http://forums.parallax.com/showthrea...=1#post1239915


    Altera Quartus FPGA Software
    Only the downloader is required.
    https://www.altera.com/download/software/prog-software
    Here is a later discussion and drivers about this
    http://forums.parallax.com/showthrea...=1#post1148613
    Here is some more info and drivers (thanks D.P.)...
    http://forums.parallax.com/showthrea...=1#post1150972



    Update 21Dec2012:
    My DE0-Nano has arrived...
    I downloaded the Quartus II Stand-Alone Programmer (Windows exe 128MB = 12.1_177_program_windows.exe and is !142MB).
    Next I plugged in the DE0-NANO (via the miniUSB port). Windows could not locate a driver.
    I downloaded the Driver.rar (see D.P.'s thread above for this) and unzipped it.
    Next I opened Start/Control Panel/USB_Blaster/Hardware/Properties/Update Driver (hope I wrote this down correctly after a few attempts)
    and Browsed to the unzipped Driver folder and clicked on something like manually look in this folder and sub-folders. The driver was located and installed.
    Download the Emulator & Pnut.exe and view the pictures (.png files) in the download for the setup.
    Start the Quartus II Standalone Programmer
    * Click the Hardware Setup, and select the USB-Blaster (USB-0)
    * Click File/Open and locate and select the downloaded DE0_Nano_Prop2.jic file
    * Click on the Program/Configure and the Verify boxes for this file (note the Program/Config also selects for the default image too).
    * Click Start and your FPGA will be programmed/verified with the P2 emulation. Check the progress bar to ensure success.
    * Close Quartus II program.
    * Disconnect power to the DE0 and the USB connection.
    * Connect your PropPlug to the DE0 (or expansion board if using this).
    * Re-apply power.
    * Launch PST and hit <space> and you should see the Propeller II Monitor prompt returned.

    You can also find info in Doug's (potatohead) P2 Monitor document located here
    http://forums.parallax.com/showthrea...=1#post1150974


    Some suggestions...
    • No doubt there will be a lot of suggestions for changes to the emulation.
      • Suggest by all means to reach a consensus, but don't interrupt Chip from his work in getting the P2 documented and out.
    • Post your test programs here by all means
    • Please keep this thread for discussions on the DE0-NANO and DE2-115 and the P2 emulation
    • There is also some discussion about the instructions and how they execute
    • There is some preliminary info on P2 pcbs too
    Add-on boards for DE0 & DE2...
    Update 14 Mar 2013:
    These pcbs are now available. Here is the thread where they are being discussed...
    http://forums.parallax.com/showthrea...tion-are-ready!

    Here is the original thread about the P2. The emulation discussion starts around page 40.
    http://forums.parallax.com/showthrea...te-BLOG/page44

    The Emulation Boards...

    DE0-Nano Development and Education Board
    by Terasic
    WARNING: There are two DE0 FPGA boards. The IS the one you want.
    It has a CycloneŽ IV EP4CE22F17C6N FPGA
    http://www.terasic.com.tw/cgi-bin/pa...o=593&PartNo=1
    Cost US$79 or US$59 academic
    Digikey and Element14 both carry these boards

    Altera DE2-115 Development and Education Board by Terasic
    http://www.terasic.com.tw/cgi-bin/pa...yNo=139&No=502
    Cost US$595 or US$299 academic
    Last edited by Cluso99; 04-19-2014 at 03:43 AM. Reason: Updated information...
    My Prop boards: CpuBlade, TriBlade, RamBlade, www.clusos.com
    Prop Tools (Index)
    Emulators (Index) ZiCog (Z80)
    Prop OS (also see Sphinx, PropDos, PropCmd)

  2. #2

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    UPDATED ZIP FILE BELOW - NEW DE0_NANO and DE2_115 CONFIGURATIONS

    I got the Terasic DE0-Nano board working!

    It runs one cog at 60MHz (takes 85% of the FPGA). It doesn't need any special wiring - just plug a PropPlug into part of a header and give it power:

    Click image for larger version

Name:	DE0_Nano_Picture.jpg
Views:	511
Size:	115.1 KB
ID:	97369

    You get 32 I/O pins, plus the serial connection:

    Click image for larger version

Name:	DE0_Nano_Hookup.png
Views:	418
Size:	1.15 MB
ID:	97368

    Also, the Terasic DE2_115 board runs six cogs at 60MHz (takes 99% of the FPGA):

    Click image for larger version

Name:	DE2_115_Prop2_Pinout.jpg
Views:	267
Size:	90.1 KB
ID:	97761

    Here's a zip with everything you need, minus the Altera configuration software:

    Terasic_Prop2.zip
    Last edited by cgracey; 12-11-2012 at 01:15 PM.

  3. #3
    Cluso99's Avatar
    Location
    Sydney/Brisbane Australia or 'sailing on the high seas'
    Posts
    10,169

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Chip: This is absolutely brilliant and revolutionary. No other vendor is this open! What a way to get a head start on getting software (and hardware) ready for the ultimate P2 release.

    Chip: Do you think we need a separate thread for the DE2-115 or do you think we should just use this one?
    (I do not want to clog this thread with everyone's opinion - I will update the title if this thread will do both)
    My Prop boards: CpuBlade, TriBlade, RamBlade, www.clusos.com
    Prop Tools (Index)
    Emulators (Index) ZiCog (Z80)
    Prop OS (also see Sphinx, PropDos, PropCmd)

  4. #4

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by Cluso99 View Post
    Chip: This is absolutely brilliant and revolutionary. No other vendor is this open! What a way to get a head start on getting software (and hardware) ready for the ultimate P2 release.

    Chip: Do you think we need a separate thread for the DE2-115 or do you think we should just use this one?
    (I do not want to clog this thread with everyone's opinion - I will update the title if this thread will do both)
    This thread should be fine, since I'm making them behave the same way.

  5. #5

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Here is what anyone needs to run the DE2_115 board as a 6-cog/full-memory 60MHz Prop2 emulator:

    Click image for larger version

Name:	DE2_115_Prop2_Pinout.jpg
Views:	423
Size:	90.1 KB
ID:	97375

    DE2_115_Prop2.zip

    I haven't been able to test this, since my DE2-115 board died, but I'm fairly confident that it will work okay. If not, I'll fix it after I get a new DE2-115 board tomorrow.

  6. #6

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by cgracey View Post
    Here is what anyone needs to run the DE2_115 board as a 6-cog/full-memory 60MHz Prop2 emulator:

    Attachment 97375

    Attachment 97376

    I haven't been able to test this, since my DE2-115 board died, but I'm fairly confident that it will work okay. If not, I'll fix it after I get a new DE2-115 board tomorrow.
    That's great! Does that mean that the PCB you've been designing for the DE2-115 board isn't actually needed? Just the stock DE2 board is enough?

  7. #7

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by David Betz View Post
    That's great! Does that mean that the PCB you've been designing for the DE2-115 board isn't actually needed? Just the stock DE2 board is enough?
    Yes, if you don't care about having a nice SPI Flash hookup. Bill Henning was pointing out that we could map Prop2 pins to many of the DE2-115 peripherals and get our DACs that way, for example, via their VGA circuit. Both the DE0-Nano and the DE2-115 boards have big SDRAMs, as well, that can be connected.

  8. #8

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Hi Chip.

    If it is possible -- Can You map even SPI on DE0-NANO that handle Analogue-IN ?



    Quote Originally Posted by cgracey View Post
    Yes, if you don't care about having a nice SPI Flash hookup. Bill Henning was pointing out that we could map Prop2 pins to many of the DE2-115 peripherals and get our DACs that way, for example, via their VGA circuit. Both the DE0-Nano and the DE2-115 boards have big SDRAMs, as well, that can be connected.
    Regards
    Sapieha
    __________________________________________________ ___
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it as simple as possible yet as versatile/usable as possible.

  9. #9

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by cgracey View Post
    Here is what anyone needs to run the DE2_115 board as a 6-cog/full-memory 60MHz Prop2 emulator:

    Attachment 97375

    Attachment 97376

    I haven't been able to test this, since my DE2-115 board died, but I'm fairly confident that it will work okay. If not, I'll fix it after I get a new DE2-115 board tomorrow.
    I'm sitting here with a very big smile on my face. Now, to load this onto the board and try not to let any of that magic smoke out!
    Thanks heaps Chip. Once again, this is a fantastic company, if you guys had come up with the Arduino (but Prop based) then Parallax would totally smite the rest. But we are going to work on that.

  10. #10

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Hi Chip.

    Now I think I have all parts in correct place.

    Some of them connected to !
    Attached Thumbnails Attached Thumbnails Click image for larger version

Name:	PropellerII-Base+2.jpg‎
Views:	460
Size:	119.9 KB
ID:	97377  
    Regards
    Sapieha
    __________________________________________________ ___
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it as simple as possible yet as versatile/usable as possible.

  11. #11

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by Sapieha View Post
    Hi Chip.

    If it is possible -- Can You map even SPI on DE0-NANO that handle Analogue-IN ?
    Sure! The first thing we need to standardize across the two boards is the open pins 31..0, the serial pins 91..90, the SPI flash pins 89..86, the SDRAM pins, and then we'll have about 16 left for other stuff.

  12. #12

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by Sapieha View Post
    Hi Chip.

    Now I think I have all parts in correct place.

    Some of them connected to !
    Wow! It looks really good. Boards laid out by hand always have a nice flow to them. That's an awful lot of stuff for one cog, though. That is more worthy of the DE2-115 board.

  13. #13

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by cgracey View Post
    Here is what anyone needs to run the DE2_115 board as a 6-cog/full-memory 60MHz Prop2 emulator:

    Attachment 97375

    Attachment 97376

    I haven't been able to test this, since my DE2-115 board died, but I'm fairly confident that it will work okay. If not, I'll fix it after I get a new DE2-115 board tomorrow.
    I'm getting the corrupted message just like Bill did. It's the standard software that comes with it.

  14. #14

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Hi Chip.

    On PCB I show in previous post I used

    JP1 GPIO_0_IN0 = RESn
    JP1 GPIO_0_0-31 = IO 0 - 31
    JP1 GPIO_0_32-33 and entire JP2 GPIO_1_0-33 as DAC 0-3

    JP3 GPIO_2_0-12 as long I have named as IO_79-91 (Yours name convention for Ports)

    As Long.
    IO 91 - 90 = Serial
    IO 89 - 86 = Flash
    IO 85 - 82 = uSD
    IO 81 - 80 = PS2

    IO 79 = Maybe one LED (free)


    To that 4 buttons on right side will use 3 GPIO_2_IN0-2 and 1 GPIO_1_IN0



    Quote Originally Posted by cgracey View Post
    Sure! The first thing we need to standardize across the two boards is the open pins 31..0, the serial pins 91..90, the SPI flash pins 89..86, the SDRAM pins, and then we'll have about 16 left for other stuff.
    Regards
    Sapieha
    __________________________________________________ ___
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it as simple as possible yet as versatile/usable as possible.

  15. #15

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Hi Chip.

    For one Propeller 1 Logic analyser and one PCB after Parallax made that PCB --->
    Entire work belong to Parallax.


    Quote Originally Posted by cgracey View Post
    Wow! It looks really good. Boards laid out by hand always have a nice flow to them. That's an awful lot of stuff for one cog, though. That is more worthy of the DE2-115 board.
    Regards
    Sapieha
    __________________________________________________ ___
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it as simple as possible yet as versatile/usable as possible.

  16. #16

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by Peter Jakacki View Post
    I'm getting the corrupted message just like Bill did. It's the standard software that comes with it.
    The Quartus web help is circular, if your file is corrupted then replace it with one that is not -- or -- convert the sof file from a later version. So I either need an sof file or download and install the multi gigabyte Quartus monster.

  17. #17

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by Peter Jakacki View Post
    I'm getting the corrupted message just like Bill did. It's the standard software that comes with it.
    Any luck yet? I can't remember what all you have to do, but I know you need the USB plugged into the DE2-115 with it powered up and SW19 set to 'PROG'. Then you need to get into the Altera Programmer software and select Active Serial Programming. Then you load that .pof file I put in the .zip. You might need to Add Device and select an EPC64 (or something 'EP64'). Once it's all set up and the Programmer software sees your USB hookup (which you might have to monkey with the menus regarding), you're ready to click Start and get the board programmed. After that, disconnect the USB, put SW19 into 'RUN' position, and cycle the power. The board should wake up thinking it's a Prop2.

  18. #18

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by Peter Jakacki View Post
    The Quartus web help is circular, if your file is corrupted then replace it with one that is not -- or -- convert the sof file from a later version. So I either need an sof file or download and install the multi gigabyte Quartus monster.
    You might need to download the big Quartus mess. That file should be fine. I renamed it from top.pof to what it's called now. Maybe the name is embedded and causing a problem. Try renaming the file to top.pof.

  19. #19

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    Quote Originally Posted by cgracey View Post
    You might need to download the big Quartus mess. That file should be fine. I renamed it from top.pof to what it's called now. Maybe the name is embedded and causing a problem. Try renaming the file to top.pof.
    Okay, I'm wrangling with the software, trying different things. I had been able to download and run demos that came with it. I'll keep on plugging away and let you know as soon as I have had success.

  20. #20

    Default Re: Propeller II: Emulation of 1 cog on a DE0-NANO FPGA board

    I initially had the "JIC file corrupted" message trying to program the DE0-nano using Quartus 11.sp1. Then downloaded the standalone programmer from Quartus12.1 ( https://www.altera.com/download/software/prog-software ) and that worked fine. So you don't need to download and install the complete Quartus web edition. Don't forget to powercycle the board after programming, that was my initial error. The FPGA configuration is loaded from the EPCS16 device into the FPGA on poweron.

    I will start working with the DE2-115 board now.

    Regards

    Nico Hattink

+ Reply to Thread

Similar Threads

  1. USB emulation with the Propeller
    By Cluso99 in forum Propeller 1 Multicore Microcontroller
    Replies: 13
    Last Post: 11-09-2011, 03:37 PM
  2. FPGA-Prop - connecting the Propeller to an FPGA
    By Leon in forum Propeller 1 Multicore Microcontroller
    Replies: 22
    Last Post: 07-09-2011, 05:24 PM
  3. Cheap Altera Cyclone II FPGA board
    By Leon in forum General Discussion
    Replies: 6
    Last Post: 03-14-2011, 12:00 AM
  4. Propeller and FPGA
    By Jay Kickliter in forum Propeller 1 Multicore Microcontroller
    Replies: 6
    Last Post: 07-17-2009, 03:15 AM
  5. What happened to the Parallax Cyclone FPGA board
    By Mike_GTN in forum General Discussion
    Replies: 7
    Last Post: 09-02-2008, 11:55 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts