OpenCores
URL https://opencores.org/ocsvn/idea/idea/trunk

Subversion Repositories idea

[/] [idea/] [trunk/] [structural_c/] [idea_machine/] [subtract16.c] - Blame information for rev 9

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 7 marta
/* File Name   : subtract16.c                                   */
2
/* Description : The 16-bit subtractor                          */
3
/* Purpose     : To be used by GENLIB                           */
4
/* Date        : Aug 22, 2001                                   */
5
/* Version     : 1.1                                            */
6
/* Author      : Martadinata A.                                 */
7
/* Address     : VLSI RG, Dept. of Electrical Engineering ITB,  */
8
/*               Bandung, Indonesia                             */
9
/* E-mail      : marta@ic.vlsi.itb.ac.id                        */
10
 
11
#include<genlib.h>
12
main()
13
{
14
 int i;
15
 DEF_LOFIG("subtract16");
16
 LOCON("a[0:15]",     IN,  "a[0:15]"  );
17
 LOCON("b[0:15]",     IN,  "b[0:15]"  );
18
 LOCON("s[0:15]",    OUT,  "s[0:15]"  );
19
 LOCON("vdd",         IN,  "vdd"      );
20
 LOCON("vss",         IN,  "vss"      );
21
 
22
 LOINS("zero_x0","zero","o_zero","vdd","vss",0);
23
 for(i=0;i<=15;i++)
24
    if (i==0)
25
       LOINS("fsub_glopg",NAME("fs%d",i),NAME("a[%d]",i),NAME("b[%d]",i),"o_zero",
26
                    NAME("s[%d]",i),NAME("bo[%d]",i),"vdd","vss",0);
27
    else if(i==15) {
28
       LOINS("xr2_x1","xr2",NAME("a[%d]",i),NAME("b[%d]",i),"o_xr2","vdd","vss",0);
29
       LOINS("xr2_x1","xr3","o_xr2",NAME("bo[%d]",i-1),NAME("s[%d]",i),"vdd","vss",0);
30
    }
31
    else
32
       LOINS("fsub_glopg",NAME("fs%d",i),NAME("a[%d]",i),NAME("b[%d]",i),NAME("bo[%d]",i-1),
33
                                  NAME("s[%d]",i),NAME("bo[%d]",i),"vdd","vss",0);
34
 
35
 SAVE_LOFIG();
36
 exit(0);
37
}

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.