Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Verilog design to test the Papilio RAM SRAM chip
Verilog Tcl
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
ipcore_dir
iseconfig
LICENSE
PRAM.ucf
README.md
clock_divider.v
dcm_clock_arwz.ucf
debounce_generic.v
hex_7_segment.v
pattern_rom.v
pram_sram_ctrl.v
pram_sram_ctrl_a.v
pram_sram_test.gise
pram_sram_test.xise
pram_sram_top.v
sram_top_bitgen.xwbt
sram_top_guide.ncd
tristate_generic.v

README.md

Verilog project to test the SRAM chip on the Papilio RAM board

This project serves as a basic sanity check for the data and address lines going from the Spartan 3A on the Papilio RAM board to the board's SRAM chip. A collection of bit patterns are written to all addresses, one pattern at a time. Once the pattern has been written, all addresses are read and compared to the current pattern. If the SRAM data and pattern do not match, the process is halted.

Output

  • The current address is displayed on a 4-digit 7-segment display plus two LEDs for the two high bits.
  • The current value is displayed on a 4-digit 7-segment display as well.
  • Two more LEDs are used to show "good" and "bad" conditions.

Wiring

Note that the following refers to pin locations by wing slot and pin index. In the links selection below, it may be helpful to follow along using the Papilio RAM pin diagram.

At a minimum, you will need a Papilio RAM board and a single Button/LED wing. Richer information is provided if you have any 7-segment displays handy.

  • Connect the address' digit select pins so that A[12:15] = anode1[3:0]
  • Connect the address' segment pins so that A[5:11] = segments1[6:0]
  • Connect the value's digit select pins so that B[3:0] = anode2[3:0]
  • Connect the value's segment pins so that B[10:4] = segments2[6:0]
  • Connect the B/LED wing into slot DL

Usage

Once the bit file has been loaded on the board, you will need to press PB1 to reset the board. This starts the pattern tests. The board runs at 100MHz and writes take 2-3 clocks, depending on how you count. Reads are purposely slowed down to make it easier to see that part of the process. This could easily run at full speed.

Links

Something went wrong with that request. Please try again.