📄 a86_bios_cache.v
字号:
// http://gforge.openchip.org/projects/a86
module a86_bios_cache(clk,addr,lock,prefix,code);
input clk;
wire clk;
input [12:0] addr;
wire [12:0] addr;
output lock;
output [7:0] prefix;
output [71:0] code;
wire [127:0] dout;
/*
reg [9:0] addr_mod8;
reg [9:0] addr_p8;
always @(addr) addr_mod8[9:0] = addr[12:3];
always @(addr_mod8) addr_p8 = addr_mod8 + 1;
a86_bios a86_bios_0 (
.addra( addr_mod8 ),
.addrb( addr_p8 ),
.clka( clk ),
.clkb( clk ),
.douta( dout[63:0] ),
.doutb( dout[127:64] )
);
*/
a86_rom8k_verilog rom_0 (
.clk( clk ),
.addr( addr ),
.data( dout )
);
reg [71:0] code_r;
always @ ( addr,dout )
case ( addr[2:0] )
3'b000: code_r[71:0] = dout[71:0];
3'b001: code_r[71:0] = dout[79:8];
3'b010: code_r[71:0] = dout[87:16];
3'b011: code_r[71:0] = dout[95:24];
3'b100: code_r[71:0] = dout[103:32];
3'b101: code_r[71:0] = dout[111:40];
3'b110: code_r[71:0] = dout[119:48];
3'b111: code_r[71:0] = dout[127:56];
endcase
//always @ ( addr ) code_r = dout >> (addr[2:0]<<3);
assign code = code_r;
//assign code = 32'heaeaeaea;
//assign code = dout[31:0];
assign prefix[7:0] = dout[7:0];
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -