Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: C12832_lcd USBDevice mbed-rtos mbed mmSPI
Diff: mmRTL/scan_16.txt
- Revision:
- 7:d1aca9ccbab8
- Parent:
- 3:659ffc90b59e
diff -r b42075c1c1c1 -r d1aca9ccbab8 mmRTL/scan_16.txt --- a/mmRTL/scan_16.txt Sun Sep 01 03:19:59 2013 +0000 +++ b/mmRTL/scan_16.txt Sun Sep 01 03:48:07 2013 +0000 @@ -1,60 +1,61 @@ /*----------------------------------copyright---------------------------------*/ -// licensed for personal and academic use. -// commercial use must be approved by the account-holder of -// gated.clock@gmail.com +// licensed for personal and academic use. +// commercial use must be approved by the account-holder of +// gated.clock@gmail.com /*-----------------------------------module-----------------------------------*/ - module scan_16 // shadow register. + module scan_16 // shadow register. ( - oParallel, // parallel-output data. - iParallel, // parallel-input data. - oSerial, // serial-output data. - iSerial, // serial-input data. - iLoadEnable, // parallel-load-enable. - iShiftEnable, // serial-shift-enable. - iResetN, // synchronous reset*. - iClk // module clock. + oParallel, // parallel-output data. + iParallel, // parallel-input data. + oSerial, // serial-output data. + iSerial, // serial-input data. + iLoadEnable, // parallel-load-enable. + iShiftEnable, // serial-shift-enable. + iResetN, // synchronous reset*. + iClk // module clock. ); /*--------------------------------description----------------------------------- - a 16-bit parallel shift-register. + a 16-bit parallel shift-register. -------------------------------------notes-------------------------------------- - shifting is LSB->MSB. + shifting is LSB->MSB. ------------------------------------defines-----------------------------------*/ /*-----------------------------------ports------------------------------------*/ - output [15:0] oParallel; // parallel-output data. - input [15:0] iParallel; // parallel-input data. - output oSerial; // serial-output data. - input iSerial; // serial-input data. - input iLoadEnable; // parallel-load-enable. - input iShiftEnable; // serial-shift-enable. - input iResetN; // synchronous reset*. - input iClk; // module clock. + output [15:0] oParallel; // parallel-output data. + input [15:0] iParallel; // parallel-input data. + output oSerial; // serial-output data. + input iSerial; // serial-input data. + input iLoadEnable; // parallel-load-enable. + input iShiftEnable; // serial-shift-enable. + input iResetN; // synchronous reset*. + input iClk; // module clock. /*-----------------------------------wires------------------------------------*/ - wire [15:0] oParallel; // parallel-output data. - wire [15:0] iParallel; // parallel-input data. - wire [15:0] wParallelIn; // select the parallel input. - wire oSerial; // serial-output data. - wire iSerial; // serial-input data. - wire iLoadEnable; // parallel-load-enable. - wire iShiftEnable; // serial-shift-enable. - wire iResetN; // synchronous reset*. - wire iClk; // module clock. + wire [15:0] oParallel; // parallel-output data. + wire [15:0] iParallel; // parallel-input data. + wire [15:0] wParallelIn; // select the parallel input. + wire oSerial; // serial-output data. + wire iSerial; // serial-input data. + wire iLoadEnable; // parallel-load-enable. + wire iShiftEnable; // serial-shift-enable. + wire iResetN; // synchronous reset*. + wire iClk; // module clock. /*---------------------------------registers----------------------------------*/ - reg [15:0] rRegister; // the register. + reg [15:0] rRegister; // the register. /*---------------------------------variables----------------------------------*/ /*---------------------------------parameters---------------------------------*/ /*-----------------------------------clocks-----------------------------------*/ /*---------------------------------instances----------------------------------*/ /*-----------------------------------logic------------------------------------*/ - always @ (posedge iClk or negedge iResetN) - begin - if (!iResetN) rRegister[15:0] <= 16'h0000; - else if (iLoadEnable) rRegister[15:0] <= iParallel[15:0]; - else if (iShiftEnable) rRegister[15:0] <= {rRegister[14:0], iSerial}; - else rRegister[15:0] <= rRegister[15:0]; - end + always @ (posedge iClk or negedge iResetN) + begin + if (!iResetN) rRegister[15:0] <= 16'h0000; + else if (iLoadEnable) rRegister[15:0] <= iParallel[15:0]; + else if (iShiftEnable) rRegister[15:0] <= {rRegister[14:0], iSerial}; + else rRegister[15:0] <= rRegister[15:0]; + end - assign oParallel[15:0] = rRegister[15:0]; // propagate parallel-out. - assign oSerial = rRegister[15]; // propagate serial-out. + // propagate parallel-out. + assign oParallel[15:0] = rRegister[15:0]; + assign oSerial = rRegister[15]; // propagate serial-out. /*-------------------------------*/endmodule/*--------------------------------*/ @@ -72,3 +73,5 @@ + +