URL
https://opencores.org/ocsvn/idea/idea/trunk
Subversion Repositories idea
Compare Revisions
- This comparison shows the changes necessary to convert path
/idea/trunk/structural_c/operation_mode
- from Rev 7 to Rev 9
- ↔ Reverse comparison
Rev 7 → Rev 9
/reg01.c
0,0 → 1,29
// File Name : reg01.c |
// Description : Register 1 bit in C |
// Author : Sigit Dewantoro |
// Date : July 3rd, 2001 |
|
#include<genlib.h> |
|
main() |
{ |
int i; |
|
DEF_LOFIG("reg01"); |
LOCON("a", IN, "a"); |
LOCON("rst", IN, "rst"); |
LOCON("en", IN, "en"); |
// LOCON("c", INOUT, "c"); |
LOCON("b", INOUT, "b"); |
LOCON("vdd", IN, "vdd"); |
LOCON("vss", IN, "vss"); |
|
LOINS ("a2_x2", "and1", "en", "a", "a1", "vdd", "vss", 0); |
LOINS ("no2_x1", "nor1", "a1", "b", "c", "vdd", "vss", 0); |
LOINS ("inv_x1", "inv1", "a", "nota", "vdd", "vss", 0); |
LOINS ("a2_x2", "and2", "en", "nota" , "a2", "vdd", "vss", 0); |
LOINS ("no3_x1", "nor2", "a2", "c", "rst", "b", "vdd", "vss", 0); |
|
SAVE_LOFIG(); |
exit(0); |
} |
/register64.c
0,0 → 1,25
// File Name : register64.c |
// Description : Register 64 bit in C |
// Author : Sigit Dewantoro |
// Date : July 10th, 2001 |
|
#include<genlib.h> |
|
main() |
{ |
int i; |
|
DEF_LOFIG("register64"); |
LOCON("a[0:63]", IN, "a[0:63]"); |
LOCON("rst", IN, "rst"); |
LOCON("en", IN, "en"); |
LOCON("b[0:63]", INOUT, "b[0:63]"); |
LOCON("vdd", IN, "vdd"); |
LOCON("vss", IN, "vss"); |
|
for (i=0; i<64; i++) |
LOINS ("reg01", NAME("reg%d", i + 1), NAME("a[%d]", i), "rst", "en", NAME("b[%d]", i), "vdd", "vss", 0); |
|
SAVE_LOFIG(); |
exit(0); |
} |
/reg01_pat.c
0,0 → 1,59
// File Name : reg01_pat.c |
// Description : Test Pattern for block register |
// Author : Sigit Dewantoro |
// Date : July 3rd, 2001 |
|
#include <stdio.h> |
#include "genpat.h" |
|
char *inttostr (entier) |
int entier; |
{ |
char *str; |
str = (char *) mbkalloc (32 * sizeof (char)); |
sprintf (str, "%d", entier); |
return (str); |
} |
|
main () |
{ |
int i, j, k, l, m; |
int vect_date; /* this date is an absolute date, in ps */ |
|
DEF_GENPAT ("reg01"); |
|
SETTUNIT ("ns"); |
|
/* interface */ |
DECLAR ("vdd", ":2", "B", IN, "", ""); |
DECLAR ("vss", ":2", "B", IN, "", ""); |
DECLAR ("a", ":2", "B", IN, "", ""); |
DECLAR ("rst", ":2", "B", IN, "", ""); |
DECLAR ("en", ":2", "B", IN, "", ""); |
DECLAR ("b", ":2", "B", OUT, "", ""); |
DECLAR ("c", ":2", "B", OUT, "", ""); |
|
LABEL ("pat"); |
AFFECT ("0", "vss", "0b0"); |
AFFECT ("0", "vdd", "0b1"); |
|
|
for (i=0; i<2; i++) |
for (j=0; j<2; j++) |
for (k=0; k<2; k++) |
for (l=0; l<2; l++) |
{ |
vect_date = ((i*2 + j)*2 + k); |
AFFECT (inttostr(vect_date), "a", inttostr(i)); |
AFFECT (inttostr(vect_date), "rst", inttostr(j)); |
AFFECT (inttostr(vect_date), "en", inttostr(k)); |
} |
|
vect_date = vect_date + 1; |
AFFECT (inttostr(vect_date), "vss", "0b0"); |
AFFECT (inttostr(vect_date), "a", "0b0"); |
AFFECT (inttostr(vect_date), "rst", "0b0"); |
AFFECT (inttostr(vect_date), "en", "0b0"); |
|
SAV_GENPAT (); |
} |
/xor64.c
0,0 → 1,29
// File Name : xor64.c |
// Description : xor 64 bit in C |
// Author : Sigit Dewantoro |
// Date : July 10th, 2001 |
|
#include<genlib.h> |
|
main() |
{ |
int i; |
|
DEF_LOFIG("xor64"); |
LOCON("a[0:63]", IN, "a[0:63]"); |
LOCON("b[0:63]", IN, "b[0:63]"); |
// LOCON("rst", IN, "rst"); |
// LOCON("en", IN, "en"); |
LOCON("o[0:63]", OUT, "o[0:63]"); |
LOCON("vdd", IN, "vdd"); |
LOCON("vss", IN, "vss"); |
|
for (i=0; i<64; i++) |
{ |
LOINS ("xr2_x1", NAME("xor%d", i + 1), NAME("a[%d]", i), NAME("b[%d]",i), NAME("i[%d]", i), "vdd", "vss", 0); |
|
LOINS ("latch", NAME("en%d", i+1), NAME("i%d",i), "en", NAME("o%d",i),"vdd","vss",0); |
} |
SAVE_LOFIG(); |
exit(0); |
} |
/latch.c
0,0 → 1,24
// File Name : latch.c |
// Description : Latch in C |
// Author : Sigit Dewantoro |
// Date : March 27th, 2001 |
|
#include <genlib.h> |
|
main() |
{ |
DEF_LOFIG ("latch"); |
|
LOCON ("a", IN, "a"); |
LOCON ("en", IN, "en"); |
LOCON ("b", INOUT, "b"); |
LOCON ("vdd", IN, "vdd"); |
LOCON ("vss", IN, "vss"); |
|
LOINS ("noa22_x1", "notorand1", "en", "a", "b", "q", "vdd", "vss", 0); |
LOINS ("inv_x1", "inv1", "a", "nota", "vdd", "vss", 0); |
LOINS ("noa22_x1", "notorand2", "en", "nota" , "q", "b", "vdd", "vss", 0); |
|
SAVE_LOFIG(); |
exit(0); |
} |
/blokmode.c
0,0 → 1,44
// File Name : blokmode.c |
// Description : blokmode in C |
// Author : Sigit Dewantoro |
// Date : July 10th, 2001 |
|
#include<genlib.h> |
|
main() |
{ |
int i; |
|
DEF_LOFIG("blokmode"); |
LOCON("data_in[0:63]", IN, "data_in[0:63]"); |
LOCON("ideam_out[0:63]", IN, "ideam_out[0:63]"); |
LOCON("rst", IN, "rst"); |
LOCON("clk", IN, "clk"); |
LOCON("en_in", IN, "en_in"); |
LOCON("en_iv", IN, "en_iv"); |
LOCON("en_rcbc", IN, "en_rcbc"); |
LOCON("en_out", IN, "en_out"); |
LOCON("sel1[0:1]", IN, "sel1[0:1]"); |
LOCON("sel2[0:1]", IN, "sel2[0:1]"); |
LOCON("sel3[0:1]", IN, "sel3[0:1]"); |
LOCON("dt_inidea[0:63]", OUT, "dt_inidea[0:63]"); |
LOCON("cp_out[0:63]", OUT, "cp_out[0:63]"); |
LOCON("vdd", IN, "vdd"); |
LOCON("vss", IN, "vss"); |
|
for (i=0;i<64;i++) |
LOINS ("zero_x0", NAME("zero%d",i), NAME("zero64[%d]",i), "vdd", "vss", 0); |
|
LOINS ("register64", "reg_in", "data_in[0:63]", "rst","en_in", "reg_in[0:63]", "vdd", "vss", 0); |
LOINS ("mux64", "mux1", "xor2[63:0]", "reg_in[63:0]", "zero64[63:0]", "sel1[1:0]", "mux1[63:0]", "vdd", "vss", 0); |
LOINS ("register64", "reg_iv","mux1[0:63]", "rst", "en_iv", "reg_iv[0:63]", "vdd", "vss", 0); |
LOINS ("mux64", "mux2", "xor2[63:0]", "reg_iv[63:0]", "zero64[63:0]", "sel2[1:0]", "mux2[63:0]","vdd", "vss", 0); |
LOINS ("xor64", "xor1", "mux1[63:0]", "mux2[63:0]", "dt_inidea[63:0]", "vdd", "vss", 0); |
LOINS ("register64", "reg_cbc", "reg_iv[0:63]", "rst","en_rcbc", "reg_cbc[0:63]", "vdd", "vss", 0); |
LOINS ("mux64", "mux3", "reg_cbc[63:0]", "reg_in[63:0]", "zero64[63:0]", "sel3[1:0]","mux3[63:0]","vdd", "vss", 0); |
LOINS ("xor64", "xor2", "ideam_out[63:0]", "mux3[63:0]", "xor2[63:0]", "vdd", "vss", 0); |
LOINS ("register64", "reg_out","xor2[0:63]", "rst","en_out","cp_out[0:63]", "vdd", "vss", 0); |
|
SAVE_LOFIG(); |
exit(0); |
} |