User`s manual

261 else begin
262 raddr <= playbackSeq[22:0] * TRACK_LENGTH;
263 trackEndAddr <= playbackSeq[22:0] * TRACK_LENGTH + TRACK_LENGTH;
264 end
265 end
266 end // if (~writeSwitch)
267 end // if (startSwitch)
268 else begin
269 // TO ENABLE RESET:
270 // writemode <= 1
271 // dowrite <= 0
272 // doread <= 0 // to be safe
273
274 // Reset First, Write Second, Read Later
275 writemode <= 1’h1;
276 doread <= 1’h0;
277 dowrite <= 1’h0;
278 end
279 end // always @
280 endmodule
A.3.13 binaryToDecimal.py
1 # Shawn Jain
2 # Python script to generate LUT for BCD.v
3
4 for i in range(100):
5 print str(i) + ’: begin + ’ones <= + str(i%10) + ’; + ’tens <= + str(i/10) + ’;’ + end’
6 print ’default: begin ones <= 0; tens <= 0; end’
A.3.14 BCD.v
1 // Shawn Jain
2 // Converts an 8-bit binary number into a decimal representation
3 // LUT generated from assets/binaryToDecimal.py
4
5 module BCD(
6 input wire [7:0] number,
7 output reg [3:0] hundreds,
8 output reg [3:0] tens,
9 output reg [3:0] ones);
10
11 always @ (number) begin
12 case(number)
13 0: begin ones <= 0; tens <= 0; end
14 1: begin ones <= 1; tens <= 0; end
241