Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Please send me an example too if any body is familiar with accessing bram content.

Status
Not open for further replies.

darshankumar

Newbie level 6
Joined
Feb 15, 2012
Messages
13
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,468
hi.i am doing project aes algorithm using bram.can any one help me
 

accessing a BRM is really fundamental. Provide an address and get a dword.

Was there anything a bit more specific?
 

since i am new to programming of bram using core generation .how to write program in verilog
 

You might want to take a look at the pdf documents for bram. Generate a bram memory core with coregen from ISE, and then do *clicky* on the "Datasheet" button. That has plenty of info including some code snippets. That's assuming it was xilinx bram, but hey totally valid random guess on my part what with your lack of detail. :p
 

i have read pdf files of core generator.the examples given in that are done with inference .i want examples using core generator
 

I'm not quite sure I follow. Do you want someone to outline all your work for you? Or ...

accessing a BRM is really fundamental. Provide an address and get a dword.

Was there anything a bit more specific?
 

can you help me in generating ip core bram for accessing memory?

---------- Post added at 14:42 ---------- Previous post was at 13:42 ----------

anybody help me correcing error??It does not work like rom??? And also help me how to generate bram ip core so that i can use it .........................




Code:
module sbox_rom1(add, clk, reset, data_out);
    input [10:0] add;
    input clk;
    input reset;
    output reg [7:0] data_out;


	 reg [7:0]sbox_rom[0:255];
	 
  always@(posedge clk or negedge reset)
  begin
   	
	if(add[10] == 0)
	begin
	    
	       sbox_rom[0]  = 8'h 63;
		    sbox_rom[1]  = 8'h 7C;
			 sbox_rom[2]  = 8'h77;
			 sbox_rom[3]  = 8'h7B;
			 sbox_rom[4]  = 8'hF2;
			 sbox_rom[5]  = 8'h6B;
			 sbox_rom[6]  = 8'h6F;
			 sbox_rom[7]  = 8'hC5;
			 sbox_rom[8]  = 8'h30;
			 sbox_rom[9]  = 8'h1;
			 sbox_rom[10] = 8'h67;
			 sbox_rom[11] = 8'h2B;
			 sbox_rom[12] = 8'hFE;
			 sbox_rom[13] = 8'hD7;
			 sbox_rom[14] = 8'hAB;
			 sbox_rom[15] = 8'h76;
			 sbox_rom[16] = 8'hCA;
			 sbox_rom[17] = 8'h82;
			 sbox_rom[18] = 8'hC9;
			 sbox_rom[19] = 8'h7D;
			 sbox_rom[20] = 8'hFA;
			 sbox_rom[21] = 8'h59;
			 sbox_rom[22] = 8'h47;
			 sbox_rom[23] = 8'hF0;
			 sbox_rom[24] = 8'hAD;
			 sbox_rom[25] = 8'hD4;
			 sbox_rom[26] = 8'hA2;
			 sbox_rom[27] = 8'hAF;
			 sbox_rom[28] = 8'h9C;
			 sbox_rom[29]	= 8'hA4;
			 sbox_rom[30] = 8'h72;
			 sbox_rom[31] = 8'hC0;
			 sbox_rom[32] = 8'hB7;
			 sbox_rom[33] = 8'hFD;
			 sbox_rom[34] = 8'h93;
			 sbox_rom[35] = 8'h26;
			 sbox_rom[36] = 8'h36;
			 sbox_rom[37] = 8'h3F;
			 sbox_rom[38] = 8'hF7;
			 sbox_rom[39] = 8'hCC;
			 sbox_rom[40] = 8'h34;
			 sbox_rom[41] = 8'hA5;
			 sbox_rom[42] = 8'hE5;
			 sbox_rom[43] = 8'hF1;
			 sbox_rom[44] = 8'h71;
			 sbox_rom[45] = 8'hD8;
			 sbox_rom[46] = 8'h31;
			 sbox_rom[47] = 8'h15;
			 sbox_rom[48] = 8'h4;
			 sbox_rom[49] = 8'hC7;
			 sbox_rom[50] = 8'h23;
			 sbox_rom[51] = 8'hC3;
			 sbox_rom[52] = 8'h18;
			 sbox_rom[53] = 8'h96;
			 sbox_rom[54] = 8'h5;
			 sbox_rom[55] = 8'h9A;
			 sbox_rom[56] = 8'h7;
			 sbox_rom[57] = 8'h12;
			 sbox_rom[58] = 8'h80;
			 sbox_rom[59] = 8'hE2;
			 sbox_rom[60] = 8'hEB;
			 sbox_rom[61] = 8'h27;
			 sbox_rom[62] = 8'hB2;
			 sbox_rom[63] = 8'h75;
			 sbox_rom[64] = 8'h9;
			 sbox_rom[65] = 8'h83;
			 sbox_rom[66] = 8'h2C;
			 sbox_rom[67] = 8'h1A;
			 sbox_rom[68] = 8'h1B;
			 sbox_rom[69] = 8'h6E;
			 sbox_rom[70] = 8'h5A;
			 sbox_rom[71] = 8'hA0;
			 sbox_rom[72] = 8'h52;
			 sbox_rom[73] = 8'h3B;
			 sbox_rom[74] = 8'hD6;
			 sbox_rom[75] = 8'hB3;
			 sbox_rom[76] = 8'h29;
			 sbox_rom[77] = 8'hE3;
			 sbox_rom[78] = 8'h2F;
			 sbox_rom[79] = 8'h84;
			 sbox_rom[80] = 8'h53;
			 sbox_rom[81] = 8'hD1;
			 sbox_rom[82] = 8'h0;
			 sbox_rom[83] = 8'hED;
			 sbox_rom[84] = 8'h20;
			 sbox_rom[85] = 8'hFC;
			 sbox_rom[86] = 8'hB1;
			 sbox_rom[87] = 8'h5B;
			 sbox_rom[88] = 8'h6A;
			 sbox_rom[89] = 8'hCB;
			 sbox_rom[90] = 8'hBE;
			 sbox_rom[91] = 8'h39;
			 sbox_rom[92] = 8'h4A;
			 sbox_rom[93] = 8'h4C;
			 sbox_rom[94] = 8'h58;
			 sbox_rom[95] = 8'hCF;
			 sbox_rom[96] = 8'hD0;
			 sbox_rom[97] = 8'hEF;
			 sbox_rom[98] = 8'hAA;
			 sbox_rom[99] = 8'hFB;
			 sbox_rom[100] = 8'h43;
			 sbox_rom[101] = 8'h4D;
			 sbox_rom[102] = 8'h33;
			 sbox_rom[103] = 8'h85;
			 sbox_rom[104] = 8'h45;
			 sbox_rom[105] = 8'hF9;
			 sbox_rom[106] = 8'h2;
			 sbox_rom[107] = 8'h7F;
			 sbox_rom[108] = 8'h50;
			 sbox_rom[109] = 8'h3C;
			 sbox_rom[110] = 8'h9F;
			 sbox_rom[111] = 8'hA8;
			 sbox_rom[112] = 8'h51;
			 sbox_rom[113] = 8'hA3;
			 sbox_rom[114] = 8'h40;
			 sbox_rom[115] = 8'h8F;
			 sbox_rom[116] = 8'h92;
			 sbox_rom[117] = 8'h9D;
			 sbox_rom[118] = 8'h38;
			 sbox_rom[119] = 8'hF5;
			 sbox_rom[120] = 8'hBC;
			 sbox_rom[121] = 8'hB6;
			 sbox_rom[122] = 8'hDA;
			 sbox_rom[123] = 8'h21;
			 sbox_rom[124] = 8'h10;
			 sbox_rom[125] = 8'hFF;
			 sbox_rom[126] = 8'hF3;
			 sbox_rom[127] = 8'hD2;
			 sbox_rom[128] = 8'hCD;
			 sbox_rom[129] = 8'hC;
			 sbox_rom[130] = 8'h13;
			 sbox_rom[131] = 8'hEC;
			 sbox_rom[132] = 8'h5F;
			 sbox_rom[133] = 8'h97;
			 sbox_rom[134] = 8'h44;
			 sbox_rom[135] = 8'h17;
			 sbox_rom[136] = 8'hC4;
			 sbox_rom[137] = 8'hA7;
			 sbox_rom[138] = 8'h7E;
			 sbox_rom[139] = 8'h3D;
			 sbox_rom[140] = 8'h64;
			 sbox_rom[141] = 8'h5D;
			 sbox_rom[142] = 8'h19;
			 sbox_rom[143] = 8'h73;
			 sbox_rom[144] = 8'h60;
			 sbox_rom[145] = 8'h81;
			 sbox_rom[146] = 8'h4F;
			 sbox_rom[147] = 8'hDC;
			 sbox_rom[148] = 8'h22;
			 sbox_rom[149] = 8'h2A;
			 sbox_rom[150] = 8'h90;
			 sbox_rom[151] = 8'h88;
			 sbox_rom[152] = 8'h46;
			 sbox_rom[153] = 8'hEE;
			 sbox_rom[154] = 8'hB8;
			 sbox_rom[155] = 8'h14;
			 sbox_rom[156] = 8'hDE;
			 sbox_rom[157] = 8'h5E;
			 sbox_rom[158] = 8'hB;
			 sbox_rom[159] = 8'hDB;
			 sbox_rom[160] = 8'hE0;
			 sbox_rom[161] = 8'h32;
			 sbox_rom[162] = 8'h3A;
			 sbox_rom[163] = 8'hA;
			 sbox_rom[164] = 8'h49;
			 sbox_rom[165] = 8'h6;
			 sbox_rom[166] = 8'h24;
			 sbox_rom[167] = 8'h5C;
			 sbox_rom[168] = 8'hC2;
			 sbox_rom[169] = 8'hD3;
			 sbox_rom[170] = 8'hAC;
			 sbox_rom[171] = 8'h62;
			 sbox_rom[172] = 8'h91;
			 sbox_rom[173] = 8'h95;
			 sbox_rom[174] = 8'hE4;
			 sbox_rom[175] = 8'h79;
			 sbox_rom[176] = 8'hE7;
			 sbox_rom[177] = 8'hC8;
			 sbox_rom[178] = 8'h37;
			 sbox_rom[179] = 8'h6D;
			 sbox_rom[180] = 8'h8D;
			 sbox_rom[181] = 8'hD5;
			 sbox_rom[182] = 8'h4E;
			 sbox_rom[183] = 8'hA9;
			 sbox_rom[184] = 8'h6C;
			 sbox_rom[185] = 8'h56;
			 sbox_rom[186] = 8'hF4;
			 sbox_rom[187] = 8'hEA;
			 sbox_rom[188] = 8'h65;
			 sbox_rom[189] = 8'h7A;
			 sbox_rom[190] = 8'hAE;
			 sbox_rom[191] = 8'h8;
			 sbox_rom[192] = 8'hBA;
			 sbox_rom[193] = 8'h78;
			 sbox_rom[194] = 8'h25;
			 sbox_rom[195] = 8'h2E;
			 sbox_rom[196] = 8'h1C;
			 sbox_rom[197] = 8'hA6;
			 sbox_rom[198] = 8'hB4;
			 sbox_rom[199] = 8'hC6;
			 sbox_rom[200] = 8'hE8;
			 sbox_rom[201] = 8'hDD;
			 sbox_rom[202] = 8'h74;
			 sbox_rom[203] = 8'h1F;
			 sbox_rom[204] = 8'h4B;
			 sbox_rom[205] = 8'hBD;
			 sbox_rom[206] = 8'h8B;
			 sbox_rom[207] = 8'h8A;
			 sbox_rom[208] = 8'h70;
			 sbox_rom[209] = 8'h3E;
			 sbox_rom[210] = 8'hB5;
			 sbox_rom[211] = 8'h66;
			 sbox_rom[212] = 8'h48;
			 sbox_rom[213] = 8'h3;
			 sbox_rom[214] = 8'hF6;
			 sbox_rom[215] = 8'hE;
			 sbox_rom[216] = 8'h61;
			 sbox_rom[217] = 8'h35;
			 sbox_rom[218] = 8'h57;
			 sbox_rom[219] = 8'hB9;
			 sbox_rom[220] = 8'h86;
			 sbox_rom[221] = 8'hC1;
			 sbox_rom[222] = 8'h1D;
			 sbox_rom[223] = 8'h9E;
			 sbox_rom[224] = 8'hE1;
			 sbox_rom[225] = 8'hF8;
			 sbox_rom[226] = 8'h98;
			 sbox_rom[227] = 8'h11;
			 sbox_rom[228] = 8'h69;
			 sbox_rom[229] = 8'hD9;
			 sbox_rom[230] = 8'h8E;
			 sbox_rom[231] = 8'h94;
			 sbox_rom[232] = 8'h9B;
			 sbox_rom[233] = 8'h1E;
			 sbox_rom[234] = 8'h87;
			 sbox_rom[235] = 8'hE9;
			 sbox_rom[236] = 8'hCE;
			 sbox_rom[237] = 8'h55;
			 sbox_rom[238] = 8'h28;
			 sbox_rom[239] = 8'hDF;
			 sbox_rom[240] = 8'h8C;
			 sbox_rom[241] = 8'hA1;
			 sbox_rom[242] = 8'h89;
			 sbox_rom[243] = 8'hD;
			 sbox_rom[244] = 8'hBF;
			 sbox_rom[245] = 8'hE6;
			 sbox_rom[246] = 8'h42;
			 sbox_rom[247] = 8'h68;
			 sbox_rom[248] = 8'h41;
			 sbox_rom[249] = 8'h99;
			 sbox_rom[250] = 8'h2D;
			 sbox_rom[251] = 8'hF;
			 sbox_rom[252] = 8'hB0;
			 sbox_rom[253] = 8'h54;
			 sbox_rom[254] = 8'hBB;
			 sbox_rom[255] = 8'h16;

          		
   end
       else if(add[10] == 1)
		   begin
			 assign  data_out = sbox_rom[add];
         end
           else
          assign  data_out = 8'hZZ;
end


endmodule
 
Last edited by a moderator:


Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top