Browse Subversion Repository
Contents of /trunk/Toriya/sbrom12.v
Parent Directory
| Revision Log
Revision 118 -
( show annotations)
( download)
Wed Apr 11 04:55:06 2007 UTC
(17 years, 1 month ago)
by chapuni
File size: 1543 byte(s)
「本物の鳥屋」ついに公開です。
たぶん 2005/09 頃のものです。
もしかするとあと一度ほど、改良するかもね。
| 1 |
/**********************************************************-*-verilog-*- |
| 2 |
* |
| 3 |
* DES用SBox ROM 1段 |
| 4 |
* $Id$ |
| 5 |
* |
| 6 |
*/ |
| 7 |
|
| 8 |
module sbrom12(clk5, |
| 9 |
e, ln0, ln1, |
| 10 |
q); |
| 11 |
|
| 12 |
input clk5; |
| 13 |
|
| 14 |
input [0:47] e; // 拡大転置後の入力値 |
| 15 |
input [0:31] ln0, ln1; // 逆転置後のL およびその1段遅れ |
| 16 |
output [0:31] q; // 出力 |
| 17 |
|
| 18 |
`include "func_des.v" |
| 19 |
|
| 20 |
// RAM に喰わすアドレスなど |
| 21 |
wire [5:0] e1, e2, e3, e4, e5, e6, e7, e8; |
| 22 |
assign {e1, e2, e3, e4, e5, e6, e7, e8} = sae(e); |
| 23 |
|
| 24 |
wire [3:0] ln01, ln02, ln03, ln04, ln05, ln06, ln07, ln08; |
| 25 |
assign {ln01, ln02, ln03, ln04, ln05, ln06, ln07, ln08} = ln0; |
| 26 |
|
| 27 |
/* |
| 28 |
* S1-S8(x1) ROM (M512) 出力ラッチなし |
| 29 |
*/ |
| 30 |
wire [0:3] q1, q2, q3, q4, q5, q6, q7, q8; |
| 31 |
srom1x1 sb1({e1, ln01[3]}, clk5, q1); |
| 32 |
//exemplar attribute sb1 NOOPT TRUE |
| 33 |
srom2x1 sb2({e2, ln02[3]}, clk5, q2); |
| 34 |
//exemplar attribute sb2 NOOPT TRUE |
| 35 |
srom3x1 sb3({e3, ln03[3]}, clk5, q3); |
| 36 |
//exemplar attribute sb3 NOOPT TRUE |
| 37 |
srom4x1 sb4({e4, ln04[3]}, clk5, q4); |
| 38 |
//exemplar attribute sb4 NOOPT TRUE |
| 39 |
srom5x1 sb5({e5, ln05[3]}, clk5, q5); |
| 40 |
//exemplar attribute sb5 NOOPT TRUE |
| 41 |
srom6x1 sb6({e6, ln06[3]}, clk5, q6); |
| 42 |
//exemplar attribute sb6 NOOPT TRUE |
| 43 |
srom7x1 sb7({e7, ln07[3]}, clk5, q7); |
| 44 |
//exemplar attribute sb7 NOOPT TRUE |
| 45 |
srom8x1 sb8({e8, ln08[3]}, clk5, q8); |
| 46 |
//exemplar attribute sb8 NOOPT TRUE |
| 47 |
|
| 48 |
/* |
| 49 |
* 出力結果MUX |
| 50 |
*/ |
| 51 |
reg [0:31] q; |
| 52 |
always @(posedge clk5) |
| 53 |
begin |
| 54 |
q <= ((ln1 & 32'b0111_0111_0111_0111_0111_0111_0111_0111) |
| 55 |
^ {q1, q2, q3, q4, q5, q6, q7, q8}); |
| 56 |
end |
| 57 |
|
| 58 |
endmodule |
| 59 |
|
| 60 |
/* |
| 61 |
* Local variables: |
| 62 |
* tab-width: 4 |
| 63 |
* End: |
| 64 |
*/ |
Properties
| svn:eol-style |
native
|
| svn:keywords |
Author Date Id Rev URL
|
| |