⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ram_model.v

📁 YUV转RGB的源程序
💻 V
📖 第 1 页 / 共 4 页
字号:
/* synthesis xc_props = "INIT_00 = ffd4ffd3ffd3ffd3ffd2ffd2ffd1ffd1ffd1ffd0ffd0ffcfffcfffcfffceffce,INIT_01 = ffdaffdaffd9ffd9ffd8ffd8ffd8ffd7ffd7ffd6ffd6ffd6ffd5ffd5ffd4ffd4,INIT_02 = ffe0ffe0ffdfffdfffdfffdeffdeffdeffddffddffdcffdcffdcffdbffdbffda,INIT_03 = ffe7ffe6ffe6ffe5ffe5ffe5ffe4ffe4ffe3ffe3ffe3ffe2ffe2ffe1ffe1ffe1,INIT_04 = ffedffecffecffecffebffebffeaffeaffeaffe9ffe9ffe8ffe8ffe8ffe7ffe7,INIT_05 = fff3fff3fff2fff2fff1fff1fff1fff0fff0fff0ffefffefffeeffeeffeeffed,INIT_06 = fff9fff9fff9fff8fff8fff7fff7fff7fff6fff6fff5fff5fff5fff4fff4fff3,INIT_07 = 0000fffffffffffefffefffefffdfffdfffcfffcfffcfffbfffbfffbfffafffa,INIT_08 = 0006000500050005000400040004000300030002000200020001000100000000,INIT_09 = 000c000c000b000b000b000a000a000900090009000800080007000700070006,INIT_0A = 00120012001200110011001000100010000f000f000f000e000e000d000d000d,INIT_0B = 0019001800180018001700170016001600160015001500140014001400130013,INIT_0C = 001f001f001e001e001d001d001d001c001c001b001b001b001a001a00190019,INIT_0D = 002500250024002400240023002300220022002200210021002100200020001f,INIT_0E = 002c002b002b002a002a002a0029002900280028002800270027002600260026,INIT_0F = 003200310031003100300030002f002f002f002e002e002d002d002d002c002c,INIT_10 = 0038003800370037003600360036003500350035003400340033003300330032,INIT_11 = 003e003e003e003d003d003c003c003c003b003b003a003a003a003900390038,INIT_12 = 00450044004400430043004300420042004100410041004000400040003f003f,INIT_13 = 004b004a004a004a004900490049004800480047004700470046004600450045,INIT_14 = 00510051005000500050004f004f004e004e004e004d004d004c004c004c004b,INIT_15 = 0057005700570056005600550055005500540054005300530053005200520052,INIT_16 = 005e005d005d005d005c005c005b005b005b005a005a00590059005900580058,INIT_17 = 006400640063006300620062006200610061006000600060005f005f005e005e,INIT_18 = 006a006a00690069006900680068006700670067006600660066006500650064,INIT_19 = 007100700070006f006f006f006e006e006d006d006d006c006c006b006b006b,INIT_1A = 0077007600760076007500750074007400740073007300720072007200710071,INIT_1B = 007d007d007c007c007b007b007b007a007a007a007900790078007800780077,INIT_1C = 0083008300830082008200810081008100800080007f007f007f007e007e007d,INIT_1D = 008a008900890088008800880087008700860086008600850085008400840084,INIT_1E = 0090008f008f008f008e008e008e008d008d008c008c008c008b008b008a008a,INIT_1F = 0096009600950095009500940094009300930093009200920091009100910090,INIT_20 = 009c009c009c009b009b009a009a009a00990099009800980098009700970097,INIT_21 = 00a300a200a200a200a100a100a000a000a0009f009f009e009e009e009d009d,INIT_22 = 00a900a900a800a800a700a700a700a600a600a500a500a500a400a400a300a3,INIT_23 = 00af00af00ae00ae00ae00ad00ad00ac00ac00ac00ab00ab00ab00aa00aa00a9,INIT_24 = 00b500b500b500b400b400b400b300b300b200b200b200b100b100b000b000b0,INIT_25 = 00bc00bb00bb00bb00ba00ba00b900b900b900b800b800b700b700b700b600b6,INIT_26 = 00c200c200c100c100c000c000c000bf00bf00bf00be00be00bd00bd00bd00bc,INIT_27 = 00c800c800c800c700c700c600c600c600c500c500c400c400c400c300c300c2,INIT_28 = 00cf00ce00ce00cd00cd00cd00cc00cc00cb00cb00cb00ca00ca00c900c900c9,INIT_29 = 00d500d400d400d400d300d300d300d200d200d100d100d100d000d000cf00cf,INIT_2A = 00db00db00da00da00da00d900d900d800d800d800d700d700d600d600d600d5,INIT_2B = 00e100e100e100e000e000df00df00df00de00de00dd00dd00dd00dc00dc00dc,INIT_2C = 00e800e700e700e600e600e600e500e500e500e400e400e300e300e300e200e2,INIT_2D = 00ee00ee00ed00ed00ec00ec00ec00eb00eb00ea00ea00ea00e900e900e800e8,INIT_2E = 00f400f400f300f300f300f200f200f100f100f100f000f000f000ef00ef00ee,INIT_2F = 00fa00fa00fa00f900f900f900f800f800f700f700f700f600f600f500f500f5,INIT_30 = 010101000100010000ff00ff00fe00fe00fe00fd00fd00fc00fc00fc00fb00fb,INIT_31 = 0107010701060106010501050105010401040104010301030102010201020101,INIT_32 = 010d010d010d010c010c010b010b010b010a010a010901090109010801080107,INIT_33 = 01140113011301120112011201110111011001100110010f010f010e010e010e,INIT_34 = 011a011901190119011801180117011701170116011601160115011501140114,INIT_35 = 01200120011f011f011f011e011e011d011d011d011c011c011b011b011b011a,INIT_36 = 0126012601260125012501240124012401230123012201220122012101210121,INIT_37 = 012d012c012c012b012b012b012a012a012a0129012901280128012801270127,INIT_38 = 013301330132013201310131013101300130012f012f012f012e012e012d012d,INIT_39 = 0139013901380138013801370137013601360136013501350135013401340133,INIT_3A = 013f013f013f013e013e013e013d013d013c013c013c013b013b013a013a013a,INIT_3B = 0146014501450145014401440143014301430142014201410141014101400140,INIT_3C = 014c014c014b014b014a014a014a014901490148014801480147014701470146,INIT_3D = 01520152015201510151015001500150014f014f014e014e014e014d014d014c,INIT_3E = 0159015801580157015701570156015601550155015501540154015301530153,INIT_3F = 015f015e015e015e015d015d015c015c015c015b015b015b015a015a01590159" */;


//synthesis translate_off

defparam
RAM5.INIT_00 = 256'hff1cff1aff18ff16ff14ff12ff10ff0eff0cff0aff08ff06ff04ff02ff00fefe,
RAM5.INIT_01 = 256'hff3cff3aff38ff36ff34ff32ff30ff2eff2cff2aff28ff26ff24ff22ff20ff1e,
RAM5.INIT_02 = 256'hff5dff5bff59ff57ff55ff53ff51ff4fff4cff4aff48ff46ff44ff42ff40ff3e,
RAM5.INIT_03 = 256'hff7dff7bff79ff77ff75ff73ff71ff6fff6dff6bff69ff67ff65ff63ff61ff5f,
RAM5.INIT_04 = 256'hff9dff9bff99ff97ff95ff93ff91ff8fff8dff8bff89ff87ff85ff83ff81ff7f,
RAM5.INIT_05 = 256'hffbdffbbffb9ffb7ffb5ffb3ffb1ffafffadffabffa9ffa7ffa5ffa3ffa1ff9f,
RAM5.INIT_06 = 256'hffdeffdcffdaffd8ffd6ffd4ffd2ffd0ffceffccffcaffc8ffc6ffc3ffc1ffbf,
RAM5.INIT_07 = 256'hfffefffcfffafff8fff6fff4fff2fff0ffeeffecffeaffe8ffe6ffe4ffe2ffe0,
RAM5.INIT_08 = 256'h001e001c001a00180016001400120010000e000c000a00080006000400020000,
RAM5.INIT_09 = 256'h003f003d003a00380036003400320030002e002c002a00280026002400220020,
RAM5.INIT_0A = 256'h005f005d005b00590057005500530051004f004d004b00490047004500430041,
RAM5.INIT_0B = 256'h007f007d007b00790077007500730071006f006d006b00690067006500630061,
RAM5.INIT_0C = 256'h009f009d009b00990097009500930091008f008d008b00890087008500830081,
RAM5.INIT_0D = 256'h00c000be00bc00ba00b800b600b400b100af00ad00ab00a900a700a500a300a1,
RAM5.INIT_0E = 256'h00e000de00dc00da00d800d600d400d200d000ce00cc00ca00c800c600c400c2,
RAM5.INIT_0F = 256'h010000fe00fc00fa00f800f600f400f200f000ee00ec00ea00e800e600e400e2,
RAM5.INIT_10 = 256'h0120011e011c011a01180116011401120110010e010c010a0108010601040102,
RAM5.INIT_11 = 256'h0141013f013d013b01390137013501330131012f012d012b0128012601240122,
RAM5.INIT_12 = 256'h0161015f015d015b01590157015501530151014f014d014b0149014701450143,
RAM5.INIT_13 = 256'h0181017f017d017b01790177017501730171016f016d016b0169016701650163,
RAM5.INIT_14 = 256'h01a201a0019d019b01990197019501930191018f018d018b0189018701850183,
RAM5.INIT_15 = 256'h01c201c001be01bc01ba01b801b601b401b201b001ae01ac01aa01a801a601a4,
RAM5.INIT_16 = 256'h01e201e001de01dc01da01d801d601d401d201d001ce01cc01ca01c801c601c4,
RAM5.INIT_17 = 256'h0202020001fe01fc01fa01f801f601f401f201f001ee01ec01ea01e801e601e4,
RAM5.INIT_18 = 256'h02230221021f021d021b02190217021402120210020e020c020a020802060204,
RAM5.INIT_19 = 256'h02430241023f023d023b02390237023502330231022f022d022b022902270225,
RAM5.INIT_1A = 256'h02630261025f025d025b02590257025502530251024f024d024b024902470245,
RAM5.INIT_1B = 256'h02830281027f027d027b02790277027502730271026f026d026b026902670265,
RAM5.INIT_1C = 256'h02a402a202a0029e029c029a02980296029402920290028e028b028902870285,
RAM5.INIT_1D = 256'h02c402c202c002be02bc02ba02b802b602b402b202b002ae02ac02aa02a802a6,
RAM5.INIT_1E = 256'h02e402e202e002de02dc02da02d802d602d402d202d002ce02cc02ca02c802c6,
RAM5.INIT_1F = 256'h03050302030002fe02fc02fa02f802f602f402f202f002ee02ec02ea02e802e6,
RAM5.INIT_20 = 256'h032503230321031f031d031b03190317031503130311030f030d030b03090307,
RAM5.INIT_21 = 256'h034503430341033f033d033b03390337033503330331032f032d032b03290327,
RAM5.INIT_22 = 256'h036503630361035f035d035b03590357035503530351034f034d034b03490347,
RAM5.INIT_23 = 256'h0386038403820380037e037c03790377037503730371036f036d036b03690367,
RAM5.INIT_24 = 256'h03a603a403a203a0039e039c039a03980396039403920390038e038c038a0388,
RAM5.INIT_25 = 256'h03c603c403c203c003be03bc03ba03b803b603b403b203b003ae03ac03aa03a8,
RAM5.INIT_26 = 256'h03e603e403e203e003de03dc03da03d803d603d403d203d003ce03cc03ca03c8,
RAM5.INIT_27 = 256'h040704050403040103ff03fd03fb03f903f703f503f303f103ee03ec03ea03e8,
RAM5.INIT_28 = 256'h0427042504230421041f041d041b04190417041504130411040f040d040b0409,
RAM5.INIT_29 = 256'h0447044504430441043f043d043b04390437043504330431042f042d042b0429,
RAM5.INIT_2A = 256'h0468046504630461045f045d045b04590457045504530451044f044d044b0449,
RAM5.INIT_2B = 256'h04880486048404820480047e047c047a04780476047404720470046e046c046a,
RAM5.INIT_2C = 256'h04a804a604a404a204a0049e049c049a04980496049404920490048e048c048a,
RAM5.INIT_2D = 256'h04c804c604c404c204c004be04bc04ba04b804b604b404b204b004ae04ac04aa,
RAM5.INIT_2E = 256'h04e904e704e504e304e104df04dc04da04d804d604d404d204d004ce04cc04ca,
RAM5.INIT_2F = 256'h0509050705050503050104ff04fd04fb04f904f704f504f304f104ef04ed04eb,
RAM5.INIT_30 = 256'h05290527052505230521051f051d051b05190517051505130511050f050d050b,
RAM5.INIT_31 = 256'h05490547054505430541053f053d053b05390537053505330531052f052d052b,
RAM5.INIT_32 = 256'h056a05680566056405620560055e055c055a0558055605530551054f054d054b,
RAM5.INIT_33 = 256'h058a05880586058405820580057e057c057a05780576057405720570056e056c,
RAM5.INIT_34 = 256'h05aa05a805a605a405a205a0059e059c059a05980596059405920590058e058c,
RAM5.INIT_35 = 256'h05ca05c805c605c405c205c005be05bc05ba05b805b605b405b205b005ae05ac,
RAM5.INIT_36 = 256'h05eb05e905e705e505e305e105df05dd05db05d905d705d505d305d105cf05cd,
RAM5.INIT_37 = 256'h060b0609060706050603060105ff05fd05fb05f905f705f505f305f105ef05ed,
RAM5.INIT_38 = 256'h062b06290627062506230621061f061d061b06190617061506130611060f060d,
RAM5.INIT_39 = 256'h064c064a0648064606440641063f063d063b06390637063506330631062f062d,
RAM5.INIT_3A = 256'h066c066a06680666066406620660065e065c065a06580656065406520650064e,
RAM5.INIT_3B = 256'h068c068a06880686068406820680067e067c067a06780676067406720670066e,
RAM5.INIT_3C = 256'h06ac06aa06a806a606a406a206a0069e069c069a06980696069406920690068e,
RAM5.INIT_3D = 256'h06cd06cb06c906c706c506c306c106bf06bd06bb06b906b606b406b206b006ae,
RAM5.INIT_3E = 256'h06ed06eb06e906e706e506e306e106df06dd06db06d906d706d506d306d106cf,
RAM5.INIT_3F = 256'h070d070b0709070707050703070106ff06fd06fb06f906f706f506f306f106ef;
//synthesis translate_on

// 2.017(Cb-128) stored in RAM5, range = 2.017[(0 to 1023)  - 128] = 2.017(-128 to 895)
RAMB16_S18 RAM5 (.DO (data_out5), .DOP (dop5), .DI (16'b0), .ADDR (Cb),  .WE (1'b0), .EN (1'b1),
                .SSR (1'b0), .DIP (2'b0), .CLK (CLK))

/* synthesis xc_props = "INIT_00 = ff1cff1aff18ff16ff14ff12ff10ff0eff0cff0aff08ff06ff04ff02ff00fefe,INIT_01 = ff3cff3aff38ff36ff34ff32ff30ff2eff2cff2aff28ff26ff24ff22ff20ff1e,INIT_02 = ff5dff5bff59ff57ff55ff53ff51ff4fff4cff4aff48ff46ff44ff42ff40ff3e,INIT_03 = ff7dff7bff79ff77ff75ff73ff71ff6fff6dff6bff69ff67ff65ff63ff61ff5f,INIT_04 = ff9dff9bff99ff97ff95ff93ff91ff8fff8dff8bff89ff87ff85ff83ff81ff7f,INIT_05 = ffbdffbbffb9ffb7ffb5ffb3ffb1ffafffadffabffa9ffa7ffa5ffa3ffa1ff9f,INIT_06 = ffdeffdcffdaffd8ffd6ffd4ffd2ffd0ffceffccffcaffc8ffc6ffc3ffc1ffbf,INIT_07 = fffefffcfffafff8fff6fff4fff2fff0ffeeffecffeaffe8ffe6ffe4ffe2ffe0,INIT_08 = 001e001c001a00180016001400120010000e000c000a00080006000400020000,INIT_09 = 003f003d003a00380036003400320030002e002c002a00280026002400220020,INIT_0A = 005f005d005b00590057005500530051004f004d004b00490047004500430041,INIT_0B = 007f007d007b00790077007500730071006f006d006b00690067006500630061,INIT_0C = 009f009d009b00990097009500930091008f008d008b00890087008500830081,INIT_0D = 00c000be00bc00ba00b800b600b400b100af00ad00ab00a900a700a500a300a1,INIT_0E = 00e000de00dc00da00d800d600d400d200d000ce00cc00ca00c800c600c400c2,INIT_0F = 010000fe00fc00fa00f800f600f400f200f000ee00ec00ea00e800e600e400e2,INIT_10 = 0120011e011c011a01180116011401120110010e010c010a0108010601040102,INIT_11 = 0141013f013d013b01390137013501330131012f012d012b0128012601240122,INIT_12 = 0161015f015d015b01590157015501530151014f014d014b0149014701450143,INIT_13 = 0181017f017d017b01790177017501730171016f016d016b0169016701650163,INIT_14 = 01a201a0019d019b01990197019501930191018f018d018b0189018701850183,INIT_15 = 01c201c001be01bc01ba01b801b601b401b201b001ae01ac01aa01a801a601a4,INIT_16 = 01e201e001de01dc01da01d801d601d401d201d001ce01cc01ca01c801c601c4,INIT_17 = 0202020001fe01fc01fa01f801f601f401f201f001ee01ec01ea01e801e601e4,INIT_18 = 02230221021f021d021b02190217021402120210020e020c020a020802060204,INIT_19 = 02430241023f023d023b02390237023502330231022f022d022b022902270225,INIT_1A = 02630261025f025d025b02590257025502530251024f024d024b024902470245,INIT_1B = 02830281027f027d027b02790277027502730271026f026d026b026902670265,INIT_1C = 02a402a202a0029e029c029a02980296029402920290028e028b028902870285,INIT_1D = 02c402c202c002be02bc02ba02b802b602b402b202b002ae02ac02aa02a802a6,INIT_1E = 02e402e202e002de02dc02da02d802d602d402d202d002ce02cc02ca02c802c6,INIT_1F = 03050302030002fe02fc02fa02f802f602f402f202f002ee02ec02ea02e802e6,INIT_20 = 032503230321031f031d031b03190317031503130311030f030d030b03090307,INIT_21 = 034503430341033f033d033b03390337033503330331032f032d032b03290327,INIT_22 = 036503630361035f035d035b03590357035503530351034f034d034b03490347,INIT_23 = 0386038403820380037e037c03790377037503730371036f036d036b03690367,INIT_24 = 03a603a403a203a0039e039c039a03980396039403920390038e038c038a0388,INIT_25 = 03c603c403c203c003be03bc03ba03b803b603b403b203b003ae03ac03aa03a8,INIT_26 = 03e603e403e203e003de03dc03da03d803d603d403d203d003ce03cc03ca03c8,INIT_27 = 040704050403040103ff03fd03fb03f903f703f503f303f103ee03ec03ea03e8,INIT_28 = 0427042504230421041f041d041b04190417041504130411040f040d040b0409,INIT_29 = 0447044504430441043f043d043b04390437043504330431042f042d042b0429,INIT_2A = 0468046504630461045f045d045b04590457045504530451044f044d044b0449,INIT_2B = 04880486048404820480047e047c047a04780476047404720470046e046c046a,INIT_2C = 04a804a604a404a204a0049e049c049a04980496049404920490048e048c048a,INIT_2D = 04c804c604c404c204c004be04bc04ba04b804b604b404b204b004ae04ac04aa,INIT_2E = 04e904e704e504e304e104df04dc04da04d804d604d404d204d004ce04cc04ca,INIT_2F = 0509050705050503050104ff04fd04fb04f904f704f504f304f104ef04ed04eb,INIT_30 = 05290527052505230521051f051d051b05190517051505130511050f050d050b,INIT_31 = 05490547054505430541053f053d053b05390537053505330531052f052d052b,INIT_32 = 056a05680566056405620560055e055c055a0558055605530551054f054d054b,INIT_33 = 058a05880586058405820580057e057c057a05780576057405720570056e056c,INIT_34 = 05aa05a805a605a405a205a0059e059c059a05980596059405920590058e058c,INIT_35 = 05ca05c805c605c405c205c005be05bc05ba05b805b605b405b205b005ae05ac,INIT_36 = 05eb05e905e705e505e305e105df05dd05db05d905d705d505d305d105cf05cd,INIT_37 = 060b0609060706050603060105ff05fd05fb05f905f705f505f305f105ef05ed,INIT_38 = 062b06290627062506230621061f061d061b06190617061506130611060f060d,INIT_39 = 064c064a0648064606440641063f063d063b06390637063506330631062f062d,INIT_3A = 066c066a06680666066406620660065e065c065a06580656065406520650064e,INIT_3B = 068c068a06880686068406820680067e067c067a06780676067406720670066e,INIT_3C = 06ac06aa06a806a606a406a206a0069e069c069a06980696069406920690068e,INIT_3D = 06cd06cb06c906c706c506c306c106bf06bd06bb06b906b606b406b206b006ae,INIT_3E = 06ed06eb06e906e706e506e306e106df06dd06db06d906d706d506d306d106cf,INIT_3F = 070d070b0709070707050703070106ff06fd06fb06f906f706f506f306f106ef" */;


always @ (posedge CLK or posedge RST)
   if (RST)
      begin
       R <= 0; G <= 0; B <= 0;
      end
   else  
   
     begin
      R <= data_out1 + data_out2;
      G <= data_out1 - data_out3 - data_out4;
      B <= data_out1 + data_out5;
     end

endmodule


module RAMB16_S18 (DO,DOP,DI,ADDR,
                   WE,EN,SSR,DIP,CLK); // synthesis syn_black_box
input [15:0]DI;
input [1:0] DIP;
input [9:0] ADDR;
input WE,EN,SSR,CLK;
output [15:0]DO;
output[1:0] DOP;

endmodule



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -