📄 sm_rom.v
字号:
/*********************************************************/
// MODULE: Signed Integer Multiply ROM
// for 4-bit operators
//
// FILE NAME: sm_rom.v
// VERSION: 1.0
// DATE: Mon Oct 19 07:35:04 1998
// AUTHOR: MR_GEN.EXE
//
// CODE TYPE: Register Transfer Level
//
// DESCRIPTION: This module defines a ROM that is used
// for generating the products of a signed integer
// multiplication. The operands are used as the index into
// the ROM and the output is the resulting product.
//
/*********************************************************/
// DEFINES
// TOP MODULE
module Sm_Rom(
address,
out);
// INPUTS
input [7:0] address; // ROM address
// OUTPUTS
output [7:0] out; // ROM output
// INOUTS
// SIGNAL DECLARATIONS
wire [7:0] address;
wire [7:0] out;
reg [7:0] rom[255:0];
// PARAMETERS
// ASSIGN STATEMENTS
assign out = rom[address];
// MAIN CODE
initial begin
rom[0] = 0;
rom[1] = 0;
rom[2] = 0;
rom[3] = 0;
rom[4] = 0;
rom[5] = 0;
rom[6] = 0;
rom[7] = 0;
rom[8] = 256;
rom[9] = 256;
rom[10] = 256;
rom[11] = 256;
rom[12] = 256;
rom[13] = 256;
rom[14] = 256;
rom[15] = 256;
rom[16] = 0;
rom[17] = 1;
rom[18] = 2;
rom[19] = 3;
rom[20] = 4;
rom[21] = 5;
rom[22] = 6;
rom[23] = 7;
rom[24] = 248;
rom[25] = 249;
rom[26] = 250;
rom[27] = 251;
rom[28] = 252;
rom[29] = 253;
rom[30] = 254;
rom[31] = 255;
rom[32] = 0;
rom[33] = 2;
rom[34] = 4;
rom[35] = 6;
rom[36] = 8;
rom[37] = 10;
rom[38] = 12;
rom[39] = 14;
rom[40] = 240;
rom[41] = 242;
rom[42] = 244;
rom[43] = 246;
rom[44] = 248;
rom[45] = 250;
rom[46] = 252;
rom[47] = 254;
rom[48] = 0;
rom[49] = 3;
rom[50] = 6;
rom[51] = 9;
rom[52] = 12;
rom[53] = 15;
rom[54] = 18;
rom[55] = 21;
rom[56] = 232;
rom[57] = 235;
rom[58] = 238;
rom[59] = 241;
rom[60] = 244;
rom[61] = 247;
rom[62] = 250;
rom[63] = 253;
rom[64] = 0;
rom[65] = 4;
rom[66] = 8;
rom[67] = 12;
rom[68] = 16;
rom[69] = 20;
rom[70] = 24;
rom[71] = 28;
rom[72] = 224;
rom[73] = 228;
rom[74] = 232;
rom[75] = 236;
rom[76] = 240;
rom[77] = 244;
rom[78] = 248;
rom[79] = 252;
rom[80] = 0;
rom[81] = 5;
rom[82] = 10;
rom[83] = 15;
rom[84] = 20;
rom[85] = 25;
rom[86] = 30;
rom[87] = 35;
rom[88] = 216;
rom[89] = 221;
rom[90] = 226;
rom[91] = 231;
rom[92] = 236;
rom[93] = 241;
rom[94] = 246;
rom[95] = 251;
rom[96] = 0;
rom[97] = 6;
rom[98] = 12;
rom[99] = 18;
rom[100] = 24;
rom[101] = 30;
rom[102] = 36;
rom[103] = 42;
rom[104] = 208;
rom[105] = 214;
rom[106] = 220;
rom[107] = 226;
rom[108] = 232;
rom[109] = 238;
rom[110] = 244;
rom[111] = 250;
rom[112] = 0;
rom[113] = 7;
rom[114] = 14;
rom[115] = 21;
rom[116] = 28;
rom[117] = 35;
rom[118] = 42;
rom[119] = 49;
rom[120] = 200;
rom[121] = 207;
rom[122] = 214;
rom[123] = 221;
rom[124] = 228;
rom[125] = 235;
rom[126] = 242;
rom[127] = 249;
rom[128] = 256;
rom[129] = 248;
rom[130] = 240;
rom[131] = 232;
rom[132] = 224;
rom[133] = 216;
rom[134] = 208;
rom[135] = 200;
rom[136] = 64;
rom[137] = 56;
rom[138] = 48;
rom[139] = 40;
rom[140] = 32;
rom[141] = 24;
rom[142] = 16;
rom[143] = 8;
rom[144] = 256;
rom[145] = 249;
rom[146] = 242;
rom[147] = 235;
rom[148] = 228;
rom[149] = 221;
rom[150] = 214;
rom[151] = 207;
rom[152] = 56;
rom[153] = 49;
rom[154] = 42;
rom[155] = 35;
rom[156] = 28;
rom[157] = 21;
rom[158] = 14;
rom[159] = 7;
rom[160] = 256;
rom[161] = 250;
rom[162] = 244;
rom[163] = 238;
rom[164] = 232;
rom[165] = 226;
rom[166] = 220;
rom[167] = 214;
rom[168] = 48;
rom[169] = 42;
rom[170] = 36;
rom[171] = 30;
rom[172] = 24;
rom[173] = 18;
rom[174] = 12;
rom[175] = 6;
rom[176] = 256;
rom[177] = 251;
rom[178] = 246;
rom[179] = 241;
rom[180] = 236;
rom[181] = 231;
rom[182] = 226;
rom[183] = 221;
rom[184] = 40;
rom[185] = 35;
rom[186] = 30;
rom[187] = 25;
rom[188] = 20;
rom[189] = 15;
rom[190] = 10;
rom[191] = 5;
rom[192] = 256;
rom[193] = 252;
rom[194] = 248;
rom[195] = 244;
rom[196] = 240;
rom[197] = 236;
rom[198] = 232;
rom[199] = 228;
rom[200] = 32;
rom[201] = 28;
rom[202] = 24;
rom[203] = 20;
rom[204] = 16;
rom[205] = 12;
rom[206] = 8;
rom[207] = 4;
rom[208] = 256;
rom[209] = 253;
rom[210] = 250;
rom[211] = 247;
rom[212] = 244;
rom[213] = 241;
rom[214] = 238;
rom[215] = 235;
rom[216] = 24;
rom[217] = 21;
rom[218] = 18;
rom[219] = 15;
rom[220] = 12;
rom[221] = 9;
rom[222] = 6;
rom[223] = 3;
rom[224] = 256;
rom[225] = 254;
rom[226] = 252;
rom[227] = 250;
rom[228] = 248;
rom[229] = 246;
rom[230] = 244;
rom[231] = 242;
rom[232] = 16;
rom[233] = 14;
rom[234] = 12;
rom[235] = 10;
rom[236] = 8;
rom[237] = 6;
rom[238] = 4;
rom[239] = 2;
rom[240] = 256;
rom[241] = 255;
rom[242] = 254;
rom[243] = 253;
rom[244] = 252;
rom[245] = 251;
rom[246] = 250;
rom[247] = 249;
rom[248] = 8;
rom[249] = 7;
rom[250] = 6;
rom[251] = 5;
rom[252] = 4;
rom[253] = 3;
rom[254] = 2;
rom[255] = 1;
end
endmodule // Sm_Rom
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -