Comments (2)
Thanks a lot for your reply, that makes a lot of sense re. a single clock cycle.
Will close this now.
from icestorm.
You can't access multiple memory cells in a BRAM within the same clock cycle. You need one clock cycle per access. Think about it, how should this work? Your data bus is 64 bit. How could this data bus carry four 64 bit values at the same time?
You can use the (* mem2reg *)
attribute for your array definition. Then it is implemented with DFFs, not BRAMs. Then it works in parallel.
Initial block is different. The iCE40 allows the bitstream to contain an initial value for all the BRAMs. This value is written into the BRAM while the FPGA loads its bitstream via SPI during configuration, not during runtime. This is very hardware specific though. Not all FPGAs allow BRAMs to have initial values.
from icestorm.
Related Issues (20)
- enhancement request: Support the NVCM HOT 4
- Targetting 8k-tq144:4k but missing pins 65 and 66 which are bound to ICE_CDONE and ICE_CREST. HOT 2
- Not able to use both PLLs of iCE40-HX4K HOT 5
- enhancement request: Add git tags
- iceprog takes 165secs to program 111kB into UPduino with FT232H HOT 3
- RS-232 on ice40 UP5k
- Broken website URL HOT 1
- UP5K: embedded block RAM clock edge/polarity
- Errors when running post-synthesis simulation examples HOT 3
- Wrong spelling of 'documentation' in the GitHub description
- Installation on Ubuntu 22.04.1
- Add support for iCE65 devices? HOT 6
- icebram incompatible with new memory_libmap HOT 13
- Lattice HX8K Breakout Board. Can not upload HOT 4
- Can't find ice FTDI usb device On Ubuntu 22.04
- Hacked Website HOT 4
- iceprog sram programming not consistent with Lattice application notes
- [SUGGESTION] Add support for Radiant-style names. HOT 1
- TPU? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from icestorm.