aboutsummaryrefslogtreecommitdiffstats
path: root/backends/json/json.cc
Commit message (Expand)AuthorAgeFilesLines
* Merge pull request #591 from hzeller/virtual-overrideClifford Wolf2018-08-151-4/+4
|\
| * Consistent use of 'override' for virtual methods in derived classes.Henner Zeller2018-07-201-4/+4
* | Fix use of signed integers in JSON back-endClifford Wolf2018-08-141-1/+3
|/
* Add attributes and parameter support to JSON front-endClifford Wolf2017-07-101-0/+2
* Improved write_json help messageClifford Wolf2016-12-291-0/+4
* write_json: also write module attributes.whitequark2016-07-121-2/+6
* Added "yosys -D" featureClifford Wolf2016-04-211-1/+1
* user-facing spelling fixesSebastian Kuzminsky2016-02-281-3/+3
* Another block of spelling fixesLarry Doolittle2015-08-141-1/+1
* Fixed trailing whitespacesClifford Wolf2015-07-021-2/+2
* Improvements in cellaigs.cc and "json -aig"Clifford Wolf2015-06-111-6/+63
* AigMaker refactoringClifford Wolf2015-06-101-1/+1
* Added "json -aig"Clifford Wolf2015-06-101-9/+63
* Added "port_directions" to write_json outputClifford Wolf2015-04-061-0/+20
* Documentation for JSON format, added attributesClifford Wolf2015-03-061-16/+156
* Json bugfixClifford Wolf2015-03-031-1/+1
* Json backend improvementsClifford Wolf2015-03-031-4/+12
* Added JSON backendClifford Wolf2015-03-021-0/+259
-- // Design Name : parallel_crc_ccitt // File Name : parallel_crc.v // Function : CCITT Parallel CRC // Coder : Deepak Kumar Tala //----------------------------------------------------- module parallel_crc_ccitt ( clk , reset , enable , init , data_in , crc_out ); //-----------Input Ports--------------- input clk ; input reset ; input enable ; input init ; input [7:0] data_in ; //-----------Output Ports--------------- output [15:0] crc_out; //------------Internal Variables-------- reg [15:0] crc_reg; wire [15:0] next_crc; //-------------Code Start----------------- assign crc_out = crc_reg; // CRC Control logic always @ (posedge clk) if (reset) begin crc_reg <= 16'hFFFF; end else if (enable) begin if (init) begin crc_reg <= 16'hFFFF; end else begin crc_reg <= next_crc; end end // Parallel CRC calculation assign next_crc[0] = data_in[7] ^ data_in[0] ^ crc_reg[4] ^ crc_reg[11]; assign next_crc[1] = data_in[1] ^ crc_reg[5]; assign next_crc[2] = data_in[2] ^ crc_reg[6]; assign next_crc[3] = data_in[3] ^ crc_reg[7]; assign next_crc[4] = data_in[4] ^ crc_reg[8]; assign next_crc[5] = data_in[7] ^ data_in[5] ^ data_in[0] ^ crc_reg[4] ^ crc_reg[9] ^ crc_reg[11]; assign next_crc[6] = data_in[6] ^ data_in[1] ^ crc_reg[5] ^ crc_reg[10]; assign next_crc[7] = data_in[7] ^ data_in[2] ^ crc_reg[6] ^ crc_reg[11]; assign next_crc[8] = data_in[3] ^ crc_reg[0] ^ crc_reg[7]; assign next_crc[9] = data_in[4] ^ crc_reg[1] ^ crc_reg[8]; assign next_crc[10] = data_in[5] ^ crc_reg[2] ^ crc_reg[9]; assign next_crc[11] = data_in[6] ^ crc_reg[3] ^ crc_reg[10]; endmodule