Since the BeMicroCV has a uSD on board, I wonder if that could be used instead of an EEPROM? I think somebody is doing something with an SD now. I take it that all the other FPGA boards do not have access to an EEPROM, so maybe access to the SD would be a good thing for storing programs to be run at startup.
Ray
Seems like a nice idea, but it is not very practical because of SDCard complexity.
Seems like a nice idea, but it is not very practical because of SDCard complexity.
I guess since there are 32 pins associated for the P1, you could attach an external SD module, SimpleIDE should find the SD, then when you write the Propeller program to the SD card, I guess there is the possibility that it could be loaded from there? That would mean that you would have to use SimpleIDE PropGCC for that?
I guess since there are 32 pins associated for the P1, you could attach an external SD module, SimpleIDE should find the SD, then when you write the Propeller program to the SD card, I guess there is the possibility that it could be loaded from there? That would mean that you would have to use SimpleIDE PropGCC for that?
Ray
Where do you put the program that the propeller runs when you power up the board?
I guess at this point the FPGA board setup is like running a Propeller chip on a bread board without an EEPROM attached? WOW, this is really like starting from scratch.
I guess at this point the FPGA board setup is like running a Propeller chip on a bread board without an EEPROM attached? WOW, this is really like starting from scratch.
Ray
Ray, that is exactly correct. As the Verilog and initial configuration are delivered, they turn the FPGA into a Propeller chip with a 80MHz clock. That's pretty much it. You can add anything you want via discrete components just like with a P1 chip.
Some folks are starting to incorporate the peripherals on the various FPGA boards into their configurations. Depending on the FPGA resources, they peripherals may or may not integrate nicely into the Propeller design.
Its a blank canvas waiting for your vision to be put onto it.
Are FPGA config EEPROMs generally accessible to the FPGA?
I suppose the alternative is to have an SDCard loader that emulates EEPROM. The BeMicro CV has enough memory blocks, but LE use is at 90% (tough times ahead there).
I guess at this point the FPGA board setup is like running a Propeller chip on a bread board without an EEPROM attached? WOW, this is really like starting from scratch.
Ray
Yes. I've been considering making an accessory/prototyping board for such things.
Are FPGA config EEPROMs generally accessible to the FPGA?
I suppose the alternative is to have an SDCard loader that emulates EEPROM. The BeMicro CV has enough memory blocks, but LE use is at 90% (tough times ahead there).
Pulling vid from 7 of the cogs (Cluso's thread I think?) leaves 7,615 / 9,430 ( 81 % ) ALM use report. Actual board to come in tomorrow, so no idea if that scheme actually works other than compiling OK.
I guess at this point the FPGA board setup is like running a Propeller chip on a bread board without an EEPROM attached? WOW, this is really like starting from scratch.
It's that and more.
As some more wriggle room is found, there is breadboard inside the FPGA opened up, so you can add logic you would usually patch externally, inside the FPGA.
Or, you could just extend some modes eg like on the Counter - add a Quadrature mode anyone ?
Looks like there is a small 2KB EEPROM on both DE0-Nano and BeMicro CV boards. That isn't big enough for anything useful though some people would think so ;-0)
The DE0-Nano doesn't have an SDCard like the BeMicro CV. Both boards have a 2x20 0.1" Terasic connector.
Someone really needs to make a small prototyping board for these things with at least an EEPROM, optional SDCard, VGA, USB-A connectors (Keyboard, etc...), and maybe a socket for SRAM.
The second header on the BeMicro CV isn't the same as Terasic, and is also 0.1" offset. So close.
If making a custom PCB it would be at least possible to break out i/o pins that overlaps, avoiding voltage pins. You might get 24 of the 32 "portB" pins this way
I think Peter is making up such a board. I'm happy to have a go in a few weeks if we're still waiting, but I suspect it will be done by then
Looks like there is a small 2KB EEPROM on both DE0-Nano and BeMicro CV boards. That isn't big enough for anything useful though some people would think so ;-0)
The DE0-Nano doesn't have an SDCard like the BeMicro CV. Both boards have a 2x20 0.1" Terasic connector.
Someone really needs to make a small prototyping board for these things with at least an EEPROM, optional SDCard, VGA, USB-A connectors (Keyboard, etc...), and maybe a socket for SRAM.
How does the CV stackup with the DE0? Can we run this at 140MHz, does it have more internal/external RAM etc? Seeing it already has an SD and is cheaper (if available) then I'd like to look at doing boards for this instead perhaps.
How does the CV stackup with the DE0? Can we run this at 140MHz, does it have more internal/external RAM etc? Seeing it already has an SD and is cheaper (if available) then I'd like to look at doing boards for this instead perhaps.
The CV has enough internal RAM for a 196KB HUB RAM (up to 220KB). Some default program could be loaded from config flash ... should be enough space for an SDCard booter there. The logic space is tight at 90% with Chip's original code, so fitter/place/route is slow and I assume timing is tight as well. It has JTAG, so at least the download is fast ;-) There are lots of opportunities for the board with the right connectors, and maybe even an XBee footprint or two.
The CV has enough internal RAM for a 196KB HUB RAM (up to 220KB). Some default program could be loaded from config flash ... should be enough space for an SDCard booter there. The logic space is tight at 90% with Chip's original code, so fitter/place/route is slow and I assume timing is tight as well. It has JTAG, so at least the download is fast ;-) There are lots of opportunities for the board with the right connectors, and maybe even an XBee footprint or two.
The hub RAM capacity looks good, can it emulate the P1 faster than 80MHz though? That would be a bonus too but I will look at getting some of these boards in, I see Arrow have a few left. FPGA compilations speeds aren't too much of a worry if this primarily being used to apply the P1V itself.
With the changes (.zip file) and instructions Chip provided for the BE Micro, the load went smoothly. If you want, I can post my BE_Micro .xip file with a working .jic in it. Then the instruction would be pretty much the same as loading the Nano with the provided .jic file provided in the original PDF on the Nano product page. (I need to rebuild it with the reset patch and test load it first)
As for the .v files, I haven't really started looking at the source yet. Verilog is different in that it is extremely parallel so it won't be like looking a a normal procedural program where you find main/start/whatever and start from there. I don't want to say any more until I study Verilog more. I don't want to mislead you with any misconceptions I may have.
Maybe someone out there with Verilog experience has some tips for how to scan a new set of files and start constructing in your mind the logic they represent.
About Verilog, or any other hardware description language:
The order of code means nothing, except within constructs like @always/if/elseif. Throw away all your tendencies to suppose that the order of lines implies some kind of sequence. It doesn't. All those lines of code do is define logic equations that are always active, or 'running'. SEQUENCE now comes from the STATE of flipflops. Your job is to define hardware that creates SEQUENCE from input pins, using flipflops to track states.
Maybe someone out there with Verilog experience has some tips for how to scan a new set of files and start constructing in your mind the logic they represent.
Barring a good IDE (maybe an eclipse plug-in?) or something like Synopsys Verdi, some people like using tools such as v2html (http://www.burbleland.com/v2html/v2html.html) to browse logic. (The verilog as-is will not work with v2html as far as I know.) Will Quartus will allow you to conveniently browse around the source code? If v2html or Quartus is too hard to get working, then maybe some of the Verilog-Perl tools could help? (e.g. http://www.veripool.org/projects/verilog-perl/wiki/Manual-verilog-perl#vhier)
After the third try I finally got the Be Micro programmed, what a horrible experience that was. I thought when I downloaded the full Quartus-II Web package, it would contain everything, I found out the hard way that you have to load a specific device driver separately. Plus there are specific little things that you have to check off before you get the Start highlighted so you can actually do the programming. Yes, other than that I guess everything is just great...:-)
I used the PropellerIDE welcome program to see if I really have a Propeller chip hidden inside of the BeMicro, yes indeed there is one there, Welcome appeared on the terminal screen when I ran the program. Now, I have to figure out where P1-P27 are, maybe I can attach an LED and try to blink it using SimpleIDE this time of course. Then I guess the next step is what?
Yes, how could I not remember that, after looking at it yesterday. Since I did not make any changes to the source, the two LEDs on the board are on, I guess once I make the source changes the LEDs will be off. The other question is the switching of the jumper, do you have to do this when you want to program the BeMicro board and switch it back to program the Propeller?
Yes, how could I not remember that, after looking at it yesterday. Since I did not make any changes to the source, the two LEDs on the board are on, I guess once I make the source changes the LEDs will be off. The other question is the switching of the jumper, do you have to do this when you want to program the BeMicro board and switch it back to program the Propeller?
Ray
I haven't touched any jumpers or switches on my BE Micro or my Nano. The DE2 does have a program and run mode controlled by a switch.
The .png shows that for the Be Micro, the power jumper is switched to the 3.3 position, does that change the power value of the pins that you will working with when it is in the Propeller mode? The LEDs that were lit up are working correctly to show the COGs, the Welcome program in the PropellerIDE uses two cogs while the SimpleIDE program uses only one COG in the Welcome program, I think? So far so good.
I just ran my ownlittle program to output a message on the serial P30/31. This uses FDX in cog 1 so both led 0 & 1 light correctly.
You program by connecting the usb port on de0. Then connect the propplug to another usb port and use that for downoading as normal.
You must have come this far anyway.
My biggest issue was getting the USB Blaster loaded in windows 8.1
I just ran my ownlittle program to output a message on the serial P30/31. This uses FDX in cog 1 so both led 0 & 1 light correctly.
You program by connecting the usb port on de0. Then connect the propplug to another usb port and use that for downoading as normal.
You must have come this far anyway.
My biggest issue was getting the USB Blaster loaded in windows 8.1
I needed to disable UAC in 8.1 to get Quartus and drivers installed without drama. Next stop for me is to run Win 7 in a VM under 8.1; I'm done with all the 8.1/Metro craziness.
I stumbled into device manager (don't know where it is hiding and i didn't google). once there it was simple to click on the failed Usb blaster icon and install the driver which requires you to browse to c:\altera\quartus\drivers and then install. Windows then finds the correct driver and installs it.
I have to use firefox to post on the forum though. How ms can get this so wrong i don't know.
I needed to disable UAC in 8.1 to get Quartus and drivers installed without drama. Next stop for me is to run Win 7 in a VM under 8.1; I'm done with all the 8.1/Metro craziness.
Use a Classic Shell and get 8.1 like an old good xp. No more metro The 8/8.1 is way better than 7 when you get rid of these tiles And I had no probem with quartus/usb blaster with 8.1
Use a Classic Shell and get 8.1 like an old good xp. No more metro The 8/8.1 is way better than 7 when you get rid of these tiles And I had no probem with quartus/usb blaster with 8.1
I added a small breadboard, as mentioned in my other post, to see if I could get an LED to blink, which was successful. Now I am wondering if I should wire up an EEPROM on the breadboard to P28/P29? I guess then I would be able to use the setup like a Propeller board, then why stop there, I could wire up an uSD module, and then...
Use a Classic Shell and get 8.1 like an old good xp. No more metro The 8/8.1 is way better than 7 when you get rid of these tiles And I had no probem with quartus/usb blaster with 8.1
Thank you for that suggestion. I had ClassicShell under 8.0 but it broke upon an upgrade to 8.1 but obviously they have addressed that issue. The UAC problem was regarding the Quartus device manager - cluso seems to have run into it and finessed the workaround, I clubbed the machine into submission.
Thanks. I don't have any quartus problems. It was only the driver installation. The IDE is fine and Proptool and PST run fine.
I am interested in running a VM for Windows 7. Does this slow the pc down when running in VM mode?
BTW I downloaded Quartus 13.1 last night so will install later today and compare its performance to Q14, both compile and usage (LE etc).
The only extensive experience I have with Win7 in a VM is under Linux - it works very well and seems to run as fast as in native mode on a similar machine, and most importantly, runs the very picky proprietary digital xray software I maintain for a day job. This is using Oracle's VM product.
Comments
Seems like a nice idea, but it is not very practical because of SDCard complexity.
Ray
Where do you put the program that the propeller runs when you power up the board?
Ray
Ray, that is exactly correct. As the Verilog and initial configuration are delivered, they turn the FPGA into a Propeller chip with a 80MHz clock. That's pretty much it. You can add anything you want via discrete components just like with a P1 chip.
Some folks are starting to incorporate the peripherals on the various FPGA boards into their configurations. Depending on the FPGA resources, they peripherals may or may not integrate nicely into the Propeller design.
Its a blank canvas waiting for your vision to be put onto it.
Are FPGA config EEPROMs generally accessible to the FPGA?
I suppose the alternative is to have an SDCard loader that emulates EEPROM. The BeMicro CV has enough memory blocks, but LE use is at 90% (tough times ahead there).
Yes. I've been considering making an accessory/prototyping board for such things.
As some more wriggle room is found, there is breadboard inside the FPGA opened up, so you can add logic you would usually patch externally, inside the FPGA.
Or, you could just extend some modes eg like on the Counter - add a Quadrature mode anyone ?
The DE0-Nano doesn't have an SDCard like the BeMicro CV. Both boards have a 2x20 0.1" Terasic connector.
Someone really needs to make a small prototyping board for these things with at least an EEPROM, optional SDCard, VGA, USB-A connectors (Keyboard, etc...), and maybe a socket for SRAM.
If making a custom PCB it would be at least possible to break out i/o pins that overlaps, avoiding voltage pins. You might get 24 of the 32 "portB" pins this way
I think Peter is making up such a board. I'm happy to have a go in a few weeks if we're still waiting, but I suspect it will be done by then
How does the CV stackup with the DE0? Can we run this at 140MHz, does it have more internal/external RAM etc? Seeing it already has an SD and is cheaper (if available) then I'd like to look at doing boards for this instead perhaps.
The CV has enough internal RAM for a 196KB HUB RAM (up to 220KB). Some default program could be loaded from config flash ... should be enough space for an SDCard booter there. The logic space is tight at 90% with Chip's original code, so fitter/place/route is slow and I assume timing is tight as well. It has JTAG, so at least the download is fast ;-) There are lots of opportunities for the board with the right connectors, and maybe even an XBee footprint or two.
The hub RAM capacity looks good, can it emulate the P1 faster than 80MHz though? That would be a bonus too but I will look at getting some of these boards in, I see Arrow have a few left. FPGA compilations speeds aren't too much of a worry if this primarily being used to apply the P1V itself.
About Verilog, or any other hardware description language:
The order of code means nothing, except within constructs like @always/if/elseif. Throw away all your tendencies to suppose that the order of lines implies some kind of sequence. It doesn't. All those lines of code do is define logic equations that are always active, or 'running'. SEQUENCE now comes from the STATE of flipflops. Your job is to define hardware that creates SEQUENCE from input pins, using flipflops to track states.
Barring a good IDE (maybe an eclipse plug-in?) or something like Synopsys Verdi, some people like using tools such as v2html (http://www.burbleland.com/v2html/v2html.html) to browse logic. (The verilog as-is will not work with v2html as far as I know.) Will Quartus will allow you to conveniently browse around the source code? If v2html or Quartus is too hard to get working, then maybe some of the Verilog-Perl tools could help? (e.g. http://www.veripool.org/projects/verilog-perl/wiki/Manual-verilog-perl#vhier)
I used the PropellerIDE welcome program to see if I really have a Propeller chip hidden inside of the BeMicro, yes indeed there is one there, Welcome appeared on the terminal screen when I ran the program. Now, I have to figure out where P1-P27 are, maybe I can attach an LED and try to blink it using SimpleIDE this time of course. Then I guess the next step is what?
Ray
There is a .png file in the .zip package that Chip created that shows you where the pins map to. Each .zip has a .png for the board it supports.
Ray
I haven't touched any jumpers or switches on my BE Micro or my Nano. The DE2 does have a program and run mode controlled by a switch.
Ray
You program by connecting the usb port on de0. Then connect the propplug to another usb port and use that for downoading as normal.
You must have come this far anyway.
My biggest issue was getting the USB Blaster loaded in windows 8.1
I have to use firefox to post on the forum though. How ms can get this so wrong i don't know.
Use a Classic Shell and get 8.1 like an old good xp. No more metro The 8/8.1 is way better than 7 when you get rid of these tiles And I had no probem with quartus/usb blaster with 8.1
http://www.classicshell.net/
I am interested in running a VM for Windows 7. Does this slow the pc down when running in VM mode?
BTW I downloaded Quartus 13.1 last night so will install later today and compare its performance to Q14, both compile and usage (LE etc).
Ray