Read Spartan6LX DNA Serial Number

Spartan6 Contain DNA logic — DNA_PORT, We can let this as random seed:)
This is 57bits numbers.


DNA_PORT DNA_PORT_inst(
  .DOUT(dna_dout),
  .CLK(dna_clk),
  .DIN(1'b0),
  .READ(dna_read),
  .SHIFT(dna_shift)
);

DNA_PORT is act as SPI Slave, capture at raise edge, and first MSB is drive out when trigger READ signal.
Then shift out one by one when SHIFT signal valid. It is better to save bits on negative edge.

I write a state machine to read DNA out, this is timing:
DNA_Timing

And test under chipscope:
DNA_number

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License

This entry was posted in Others and tagged , , , , , . Bookmark the permalink.