亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? or1200_spram_2048x32_bw.v

?? or1200開源risc cpu的verilog描述實現(xiàn)
?? V
字號:
//////////////////////////////////////////////////////////////////////////                                                              ////////  Generic Single-Port Synchronous RAM with byte write signals ////////                                                              ////////  This file is part of memory library available from          ////////  http://www.opencores.org/cvsweb.shtml/generic_memories/     ////////                                                              ////////  Description                                                 ////////  This block is a wrapper with common single-port             ////////  synchronous memory interface for different                  ////////  types of ASIC and FPGA RAMs. Beside universal memory        ////////  interface it also provides behavioral model of generic      ////////  single-port synchronous RAM.                                ////////  It should be used in all OPENCORES designs that want to be  ////////  portable accross different target technologies and          ////////  independent of target memory.                               ////////                                                              ////////  Supported ASIC RAMs are:                                    ////////  - Artisan Single-Port Sync RAM                              ////////  - Avant! Two-Port Sync RAM (*)                              ////////  - Virage Single-Port Sync RAM                               ////////  - Virtual Silicon Single-Port Sync RAM                      ////////                                                              ////////  Supported FPGA RAMs are:                                    ////////  - Xilinx Virtex RAMB16                                      ////////  - Xilinx Virtex RAMB4                                       ////////                                                              ////////  To Do:                                                      ////////   - xilinx rams need external tri-state logic                ////////   - fix avant! two-port ram                                  ////////   - add additional RAMs                                      ////////                                                              ////////  Author(s):                                                  ////////      - Damjan Lampret, lampret@opencores.org                 ////////                                                              //////////////////////////////////////////////////////////////////////////////                                                              //////// Copyright (C) 2000 Authors and OPENCORES.ORG                 ////////                                                              //////// This source file may be used and distributed without         //////// restriction provided that this copyright statement is not    //////// removed from the file and that any derivative work contains  //////// the original copyright notice and the associated disclaimer. ////////                                                              //////// This source file is free software; you can redistribute it   //////// and/or modify it under the terms of the GNU Lesser General   //////// Public License as published by the Free Software Foundation; //////// either version 2.1 of the License, or (at your option) any   //////// later version.                                               ////////                                                              //////// This source is distributed in the hope that it will be       //////// useful, but WITHOUT ANY WARRANTY; without even the implied   //////// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR      //////// PURPOSE.  See the GNU Lesser General Public License for more //////// details.                                                     ////////                                                              //////// You should have received a copy of the GNU Lesser General    //////// Public License along with this source; if not, download it   //////// from http://www.opencores.org/lgpl.shtml                     ////////                                                              ////////////////////////////////////////////////////////////////////////////// CVS Revision History//// $Log: or1200_spram_2048x32_bw.v,v $// Revision 1.5  2005/10/19 11:37:56  jcastillo// Added support for RAMB16 Xilinx4/Spartan3 primitives//// Revision 1.4  2004/06/08 18:15:32  lampret// Changed behavior of the simulation generic models//// Revision 1.3  2003/10/17 07:59:44  markom// mbist signals updated according to newest convention//// Revision 1.2  2003/09/12 09:03:54  dries// correct all the syntax errors//// Revision 1.1  2003/08/26 09:37:02  simons// Added support for rams with byte write access.////// synopsys translate_off`include "timescale.v"// synopsys translate_on`include "or1200_defines.v"module or1200_spram_2048x32_bw(`ifdef OR1200_BIST        // RAM BIST        mbist_si_i, mbist_so_o, mbist_ctrl_i,`endif        // Generic synchronous single-port RAM interface        clk, rst, ce, we, oe, addr, di, doq);`ifdef OR1200_BIST//// RAM BIST//input                   mbist_si_i;input [`OR1200_MBIST_CTRL_WIDTH - 1:0] mbist_ctrl_i;       // bist chain shift controloutput                  mbist_so_o;`endif//// Generic synchronous single-port RAM interface//input                   clk;    // Clockinput                   rst;    // Resetinput                   ce;     // Chip enable inputinput   [3:0]           we;     // Write enable inputinput                   oe;     // Output enable inputinput   [10:0]          addr;   // address bus inputsinput   [31:0]          di;     // input data busoutput  [31:0]          doq;     // output data bus//// Internal wires and registers//`ifdef OR1200_ARTISAN_SSP`else`ifdef OR1200_VIRTUALSILICON_SSP`else`ifdef OR1200_BISTassign mbist_so_o = mbist_si_i;`endif`endif`endif`ifdef OR1200_ARTISAN_SSP//// Instantiation of ASIC memory://// Artisan Synchronous Single-Port RAM (ra1sh)//`ifdef UNUSEDart_hssp_2048x32_bw artisan_ssp(`else`ifdef OR1200_BISTart_hssp_2048x32_bw_bist artisan_ssp(`elseart_hssp_2048x32_bw artisan_ssp(`endif`endif`ifdef OR1200_BIST        // RAM BIST        .mbist_si_i(mbist_si_i),        .mbist_so_o(mbist_so_o),        .mbist_ctrl_i(mbist_ctrl_i),`endif        .CLK(clk),        .CEN(~ce),        .WEN(~we),        .A(addr),        .D(di),        .OEN(~oe),        .Q(doq));`else`ifdef OR1200_AVANT_ATP//// Instantiation of ASIC memory://// Avant! Asynchronous Two-Port RAM//avant_atp avant_atp(        .web(~we),        .reb(),        .oeb(~oe),        .rcsb(),        .wcsb(),        .ra(addr),        .wa(addr),        .di(di),        .doq(doq));`else`ifdef OR1200_VIRAGE_SSP//// Instantiation of ASIC memory://// Virage Synchronous 1-port R/W RAM//virage_ssp virage_ssp(        .clk(clk),        .adr(addr),        .d(di),        .we(we),        .oe(oe),        .me(ce),        .q(doq));`else`ifdef OR1200_VIRTUALSILICON_SSP//// Instantiation of ASIC memory://// Virtual Silicon Single-Port Synchronous SRAM//`ifdef OR1200_BISTwire mbist_si_i_ram_0;wire mbist_si_i_ram_1;wire mbist_si_i_ram_2;wire mbist_si_i_ram_3;wire mbist_so_o_ram_0;wire mbist_so_o_ram_1;wire mbist_so_o_ram_2;wire mbist_so_o_ram_3;assign mbist_si_i_ram_0 = mbist_si_i;assign mbist_si_i_ram_1 = mbist_so_o_ram_0;assign mbist_si_i_ram_2 = mbist_so_o_ram_1;assign mbist_si_i_ram_3 = mbist_so_o_ram_2;assign mbist_so_o = mbist_so_o_ram_3;`endif`ifdef UNUSEDvs_hdsp_2048x8 vs_ssp_0(`else`ifdef OR1200_BISTvs_hdsp_2048x8_bist vs_ssp_0(`elsevs_hdsp_2048x8 vs_ssp_0(`endif`endif`ifdef OR1200_BIST        // RAM BIST        .mbist_si_i(mbist_si_i_ram_0),        .mbist_so_o(mbist_so_o_ram_0),        .mbist_ctrl_i(mbist_ctrl_i),`endif        .CK(clk),        .ADR(addr),        .DI(di[7:0]),        .WEN(~we[0]),        .CEN(~ce),        .OEN(~oe),        .DOUT(doq[7:0]));`ifdef UNUSEDvs_hdsp_2048x8 vs_ssp_1(`else`ifdef OR1200_BISTvs_hdsp_2048x8_bist vs_ssp_1(`elsevs_hdsp_2048x8 vs_ssp_1(`endif`endif`ifdef OR1200_BIST        // RAM BIST        .mbist_si_i(mbist_si_i_ram_1),        .mbist_so_o(mbist_so_o_ram_1),        .mbist_ctrl_i(mbist_ctrl_i),`endif        .CK(clk),        .ADR(addr),        .DI(di[15:8]),        .WEN(~we[1]),        .CEN(~ce),        .OEN(~oe),        .DOUT(doq[15:8]));`ifdef UNUSEDvs_hdsp_2048x8 vs_ssp_2(`else`ifdef OR1200_BISTvs_hdsp_2048x8_bist vs_ssp_2(`elsevs_hdsp_2048x8 vs_ssp_2(`endif`endif`ifdef OR1200_BIST        // RAM BIST        .mbist_si_i(mbist_si_i_ram_2),        .mbist_so_o(mbist_so_o_ram_2),        .mbist_ctrl_i(mbist_ctrl_i),`endif        .CK(clk),        .ADR(addr),        .DI(di[23:16]),        .WEN(~we[2]),        .CEN(~ce),        .OEN(~oe),        .DOUT(doq[23:16]));`ifdef UNUSEDvs_hdsp_2048x8 vs_ssp_3(`else`ifdef OR1200_BISTvs_hdsp_2048x8_bist vs_ssp_3(`elsevs_hdsp_2048x8 vs_ssp_3(`endif`endif`ifdef OR1200_BIST        // RAM BIST        .mbist_si_i(mbist_si_i_ram_3),        .mbist_so_o(mbist_so_o_ram_3),        .mbist_ctrl_i(mbist_ctrl_i),`endif        .CK(clk),        .ADR(addr),        .DI(di[31:24]),        .WEN(~we[3]),        .CEN(~ce),        .OEN(~oe),        .DOUT(doq[31:24]));`else`ifdef OR1200_XILINX_RAMB4//// Instantiation of FPGA memory://// Virtex/Spartan2////// Block 0//RAMB4_S2 ramb4_s2_0(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[1:0]),	.EN(ce),	.WE(we[0]),	.DO(doq[1:0]));//// Block 1//RAMB4_S2 ramb4_s2_1(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[3:2]),	.EN(ce),	.WE(we[0]),	.DO(doq[3:2]));//// Block 2//RAMB4_S2 ramb4_s2_2(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[5:4]),	.EN(ce),	.WE(we[0]),	.DO(doq[5:4]));//// Block 3//RAMB4_S2 ramb4_s2_3(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[7:6]),	.EN(ce),	.WE(we[0]),	.DO(doq[7:6]));//// Block 4//RAMB4_S2 ramb4_s2_4(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[9:8]),	.EN(ce),	.WE(we[1]),	.DO(doq[9:8]));//// Block 5//RAMB4_S2 ramb4_s2_5(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[11:10]),	.EN(ce),	.WE(we[1]),	.DO(doq[11:10]));//// Block 6//RAMB4_S2 ramb4_s2_6(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[13:12]),	.EN(ce),	.WE(we[1]),	.DO(doq[13:12]));//// Block 7//RAMB4_S2 ramb4_s2_7(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[15:14]),	.EN(ce),	.WE(we[1]),	.DO(doq[15:14]));//// Block 8//RAMB4_S2 ramb4_s2_8(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[17:16]),	.EN(ce),	.WE(we[2]),	.DO(doq[17:16]));//// Block 9//RAMB4_S2 ramb4_s2_9(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[19:18]),	.EN(ce),	.WE(we[2]),	.DO(doq[19:18]));//// Block 10//RAMB4_S2 ramb4_s2_10(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[21:20]),	.EN(ce),	.WE(we[2]),	.DO(doq[21:20]));//// Block 11//RAMB4_S2 ramb4_s2_11(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[23:22]),	.EN(ce),	.WE(we[2]),	.DO(doq[23:22]));//// Block 12//RAMB4_S2 ramb4_s2_12(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[25:24]),	.EN(ce),	.WE(we[3]),	.DO(doq[25:24]));//// Block 13//RAMB4_S2 ramb4_s2_13(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[27:26]),	.EN(ce),	.WE(we[3]),	.DO(doq[27:26]));//// Block 14//RAMB4_S2 ramb4_s2_14(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[29:28]),	.EN(ce),	.WE(we[3]),	.DO(doq[29:28]));//// Block 15//RAMB4_S2 ramb4_s2_15(	.CLK(clk),	.RST(rst),	.ADDR(addr),	.DI(di[31:30]),	.EN(ce),	.WE(we[3]),	.DO(doq[31:30]));`else`ifdef OR1200_XILINX_RAMB16//// Instantiation of FPGA memory://// Virtex4/Spartan3E//// Added By Nir Mor////// Block 0//RAMB16_S9 ramb16_s9_0(	.CLK(clk),	.SSR(rst),	.ADDR(addr),	.DI(di[7:0]),	.DIP(1'b0),	.EN(ce),	.WE(we[0]),	.DO(doq[7:0]),	.DOP());//// Block 1//RAMB16_S9 ramb16_s9_1(	.CLK(clk),	.SSR(rst),	.ADDR(addr),	.DI(di[15:8]),	.DIP(1'b0),	.EN(ce),	.WE(we[1]),	.DO(doq[15:8]),	.DOP());//// Block 2//RAMB16_S9 ramb16_s9_2(	.CLK(clk),	.SSR(rst),	.ADDR(addr),	.DI(di[23:16]),	.DIP(1'b0),	.EN(ce),	.WE(we[2]),	.DO(doq[23:16]),	.DOP());//// Block 3//RAMB16_S9 ramb16_s9_3(	.CLK(clk),	.SSR(rst),	.ADDR(addr),	.DI(di[31:24]),	.DIP(1'b0),	.EN(ce),	.WE(we[3]),	.DO(doq[31:24]),	.DOP());`else//// Generic single-port synchronous RAM model////// Generic RAM's registers and wires//reg     [7:0]        mem_0 [2047:0];              // RAM contentreg     [7:0]        mem_1 [2047:0];              // RAM contentreg     [7:0]        mem_2 [2047:0];              // RAM contentreg     [7:0]        mem_3 [2047:0];              // RAM contentreg     [10:0]       addr_reg;                    // RAM address register                                                                                                                                                                                                     //// Data output drivers//assign doq = (oe) ? {mem_3[addr_reg], mem_2[addr_reg], mem_1[addr_reg], mem_0[addr_reg]} : {32{1'b0}};                                                                                                                                                                                                     //// RAM address register//always @(posedge clk or posedge rst)        if (rst)                addr_reg <= #1 11'h000;        else if (ce)                addr_reg <= #1 addr;                                                                                                                                                                                                     //// RAM write byte 0//always @(posedge clk)        if (ce && we[0])                mem_0[addr] <= #1 di[7:0];                                                                                                                                                                                                     //// RAM write byte 1//always @(posedge clk)        if (ce && we[1])                mem_1[addr] <= #1 di[15:8];                                                                                                                                                                                                     //// RAM write byte 2//always @(posedge clk)        if (ce && we[2])                mem_2[addr] <= #1 di[23:16];                                                                                                                                                                                                     //// RAM write byte 3//always @(posedge clk)        if (ce && we[3])                mem_3[addr] <= #1 di[31:24];`endif  // !OR1200_XILINX_RAMB16`endif  // !OR1200_XILINX_RAMB4`endif  // !OR1200_VIRTUALSILICON_SSP`endif  // !OR1200_VIRAGE_SSP`endif  // !OR1200_AVANT_ATP`endif  // !OR1200_ARTISAN_SSPendmodule

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色哟哟欧美精品| 欧美日韩一区在线观看| 夜夜精品浪潮av一区二区三区| 欧美高清你懂得| www.日韩大片| 国产精一品亚洲二区在线视频| 亚洲欧美经典视频| 在线这里只有精品| 中文一区在线播放| 欧美日韩大陆一区二区| 国产99久久久国产精品潘金网站| 午夜日韩在线电影| 国产精品天干天干在线综合| 欧美一区二区视频在线观看2020| 成人app网站| 国产精品一区二区在线播放| 亚洲成人av一区二区| 亚洲视频免费看| 日本一区二区三区高清不卡| 日韩三级精品电影久久久| 欧美日韩一级大片网址| 成人免费福利片| 国产福利视频一区二区三区| 奇米影视一区二区三区小说| 亚洲一卡二卡三卡四卡五卡| 国产精品理伦片| 国产精品免费aⅴ片在线观看| 欧美不卡在线视频| 欧美一区二视频| 欧美高清视频不卡网| 欧美日韩在线直播| 精品国产一区二区国模嫣然| 蓝色福利精品导航| 亚洲一区二区三区在线播放| 日韩理论片一区二区| 久久品道一品道久久精品| 欧美一区二区二区| 日韩一级免费观看| 91精品国产91久久久久久最新毛片| 欧美视频一区二区三区四区| 欧美日韩免费一区二区三区| 在线观看国产一区二区| 日本韩国欧美三级| 色天使久久综合网天天| 欧美性高清videossexo| 欧美性色欧美a在线播放| 欧美三级在线看| 欧美日韩一区二区三区不卡| 欧美日韩国产免费| 欧美精品一卡两卡| 欧美mv日韩mv国产网站app| 欧美mv日韩mv国产网站| 久久精品夜夜夜夜久久| 日韩免费观看高清完整版在线观看| 欧美国产视频在线| 国产丝袜欧美中文另类| 中文字幕欧美国产| 17c精品麻豆一区二区免费| 国产精品第四页| 亚洲色欲色欲www在线观看| 亚洲综合免费观看高清完整版在线| 一区二区三区四区激情| 亚洲成a人片综合在线| 日本免费在线视频不卡一不卡二 | 亚洲乱码日产精品bd| 伊人开心综合网| 日韩av在线发布| 国产精品亚洲午夜一区二区三区 | 成人午夜激情片| 91豆麻精品91久久久久久| 国产精品久久久久久久岛一牛影视| 国产喷白浆一区二区三区| 欧美激情一区二区三区在线| 亚洲三级在线看| 日韩国产在线观看一区| 国产九色sp调教91| 日本黄色一区二区| 精品处破学生在线二十三| 中文字幕一区在线| 午夜精品福利视频网站| 国产不卡高清在线观看视频| 91亚洲精品乱码久久久久久蜜桃| 欧美在线高清视频| 精品国产露脸精彩对白 | 国产日产欧产精品推荐色| 亚洲少妇屁股交4| 狂野欧美性猛交blacked| aaa亚洲精品一二三区| 欧美二区三区的天堂| 亚洲国产精品av| 亚洲高清中文字幕| 成人一级视频在线观看| 3d成人动漫网站| 国产精品高潮呻吟| 久久国产剧场电影| 色爱区综合激月婷婷| 日韩精品一区在线| 亚洲精品综合在线| 国产精品一区二区三区网站| 欧美日韩精品一区二区三区| 国产精品夫妻自拍| 狠狠网亚洲精品| 欧美日韩在线综合| 国产精品久久久久久久久免费相片 | 日韩电影在线免费看| 国产91综合网| 日韩欧美第一区| 亚洲综合精品久久| 91精品国产综合久久福利| 在线看国产一区二区| 久久亚洲春色中文字幕久久久| 亚洲欧美日韩在线| 国产高清精品在线| 欧美美女直播网站| 亚洲欧洲制服丝袜| 粉嫩av亚洲一区二区图片| 日韩无一区二区| 午夜电影久久久| 在线免费一区三区| 国产精品毛片久久久久久| 欧洲生活片亚洲生活在线观看| 久久综合九色综合97婷婷女人| 日本不卡在线视频| 在线观看欧美日本| 一区二区三区在线播| 91日韩一区二区三区| 91在线视频官网| 亚洲精品一区二区三区四区高清| 亚洲国产中文字幕| 在线免费视频一区二区| 亚洲男人的天堂av| 97se亚洲国产综合在线| 国产精品拍天天在线| 国产成人a级片| 国产精品三级视频| 成人综合在线观看| 亚洲国产高清在线| 成人毛片老司机大片| 中文字幕乱码日本亚洲一区二区 | 欧美精品粉嫩高潮一区二区| 夜夜嗨av一区二区三区| 91官网在线观看| 亚洲18女电影在线观看| 欧美高清视频不卡网| 毛片基地黄久久久久久天堂| 精品日产卡一卡二卡麻豆| 极品少妇xxxx偷拍精品少妇| 久久久久久久久岛国免费| 国产高清精品在线| 中文字幕亚洲综合久久菠萝蜜| 99精品在线观看视频| 亚洲精选视频免费看| 欧美日韩国产精品成人| 国产精品久久久久一区| 国产欧美一区二区三区在线老狼| 精品一区二区三区在线观看| 精品国产乱码久久久久久牛牛| 欧美视频在线一区二区三区 | 蜜臀久久久99精品久久久久久| 91精品中文字幕一区二区三区| 日韩极品在线观看| 日韩一区二区电影在线| 韩国成人在线视频| 国产嫩草影院久久久久| 一本一道久久a久久精品综合蜜臀 一本一道综合狠狠老 | 成人免费视频一区二区| 一区二区三区在线免费播放| 欧美男生操女生| 国产一区二区调教| 一区精品在线播放| 欧美日本免费一区二区三区| 久久国产精品无码网站| 日韩一区中文字幕| 欧美人狂配大交3d怪物一区| 国内精品伊人久久久久av一坑| 一区在线中文字幕| 欧美疯狂做受xxxx富婆| 国产精品亚洲一区二区三区在线 | 91蜜桃在线免费视频| 亚洲h在线观看| 久久久不卡网国产精品二区 | 色八戒一区二区三区| 久久激情五月激情| 亚洲日本护士毛茸茸| 欧美一二三四在线| 成人黄色一级视频| 日本成人中文字幕在线视频| 国产精品美女久久久久aⅴ国产馆| 精品婷婷伊人一区三区三| 国产高清成人在线| 亚洲第一激情av| 欧美国产激情一区二区三区蜜月| 国产精品久久久久久久久免费丝袜| 91成人看片片| 高清国产午夜精品久久久久久| 国产老妇另类xxxxx| 国产精品乱人伦中文| 欧美一卡二卡三卡四卡| 成人黄色a**站在线观看| 日韩高清在线电影|