URL
https://opencores.org/ocsvn/zpu/zpu/trunk
Subversion Repositories zpu
Compare Revisions
- This comparison shows the changes necessary to convert path
/
- from Rev 79 to Rev 80
- ↔ Reverse comparison
Rev 79 → Rev 80
/trunk/zpu/docs/images/spi_read_timing.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
trunk/zpu/docs/images/spi_read_timing.png
Property changes :
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: trunk/zpu/docs/images/spi_timing_overview.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: trunk/zpu/docs/images/spi_timing_overview.png
===================================================================
--- trunk/zpu/docs/images/spi_timing_overview.png (nonexistent)
+++ trunk/zpu/docs/images/spi_timing_overview.png (revision 80)
trunk/zpu/docs/images/spi_timing_overview.png
Property changes :
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: trunk/zpu/docs/images/spi_readfast_timing.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: trunk/zpu/docs/images/spi_readfast_timing.png
===================================================================
--- trunk/zpu/docs/images/spi_readfast_timing.png (nonexistent)
+++ trunk/zpu/docs/images/spi_readfast_timing.png (revision 80)
trunk/zpu/docs/images/spi_readfast_timing.png
Property changes :
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: trunk/zpu/docs/zpu_arch.html
===================================================================
--- trunk/zpu/docs/zpu_arch.html (revision 79)
+++ trunk/zpu/docs/zpu_arch.html (revision 80)
@@ -28,6 +28,7 @@
Zealot: Implementing in FPGAs
Optimizing for code size
Installing eCos build tools
+ SPI flash controller
Next generation ZPU
@@ -1618,6 +1619,83 @@
zpu-elf-size hello.elf
+ + + +Fast-READ only implementation.
+ 32-bit only access
+ Fast sequential read access - Uses low-clock approach
+
+
+
+
+
+
+
+
+ + + +
SPI flash controller (read-only)
+This is a simple read-only SPI flash controller, with the following characteristics: + +-
+
Version
+The current version is 1.2. This is also the first public version available. + +Timing overview
+ +Simple timing overview, with one nonsequential access to address 0x0, followed by a sequential access to address 0x4. +This simulation was done with Xilinx tools, after post-routing, and using a ZPU to access the SPI
+
+
+
+
+
+On Image 2, you can see the clock almost perfectly centered on data, when we write to the SPI flash.
+
+Image 1: Timing overview
+
+
+
+
+As you can see from Image 3, I assume the worst-case read delay from SPI (which is 15ns, as you can see from the marker).
+
+Image 2: Issuing commands to the SPI
+
+
+
+
+Image 3: Reading from the SPI
+Usage
+ +Simple description of SPI controller interface: + +Symbol | +Direction | +Bit width | +Purpose | +
---|---|---|---|
adr | Input | 24 | Address where to read from SPI |
dat_o | Output | 32 | Data read from SPI |
clk | Input | 1 | Input clock. Used for both interface and SPI |
ce | Input | 1 | Chip Enable |
rst | Input | 1 | Asynchronous reset |
ack | Output | 1 | Data valid ACK |
SPI_CLK | Output | 1 | SPI output clock |
SPI_MOSI | Output | 1 | SPI output data from controller to chip |
SPI_MISO | Input | 1 | SPI input data from chip to controller |
SPI_SELN | Output | 1 | SPI nSEL (deselect, active low) signal |