原创 Acetl Application Note

2008-10-27 11:41 3944 3 3 分类: FPGA/CPLD

        在使用Actel 的FPGA过程中,不断遇到一些使用问题,为了避免在同一个地方摔倒多次,因此很有必要做笔记,同时也拿出来跟各位朋友分享,希望大家给点意见,共同探讨.


1.1      分频模块的使用


Divided and Delayed能够实现分频和延时功能,每个模块占用一条全局网络,而且要求芯片有PLL,因此在需要使用分频的工程中,可以使用该模块,以节省由于分频而做成资源开销,Versa Tile.


问题:


扇出能力不足:


Error: CMP402: The reference clock pin of PLL 'div2/Inst1:CLK', when driven by an I/O cell, must have a fanout of 1.<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


Error: CMP402: The reference clock pin of PLL 'div1/Inst1:CLK', when driven by an I/O cell, must have a fanout of 1.


解决办法:在输入I/O后面加一个BUFFER,INBUF,但要注意,如果使用CLKBUF的话,BUFFER自身会使用一条全局网络。


Input sysclk;


CLKBUF CLKBUF1(.PAD(sysclk),.Y(clk));



 


 


1.2      Designer软件中修改了芯片型号,从原来的A3P600改成了AGL600,然后启动<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /> ,就出现下面的问题。


Error: NETLIST:014 PLL is an Actel macro and cannot be used as a user cell. Number of ports differ from ADLIB.


 


 


 


1.3      使用A3P030时,生成PLL,出现以下错误。


问题:


这种模式只有内部有PLL CCC才支持。否则会出现下面的问题。


ERROR:  CMP600: This design has one or more instances of the CLKDLY macro


        which is not supported for the device in use.


        Before compiling, this macro(s) must be removed from the design


1.4      RC振荡器做PLL时钟输入


RC振荡器是Fusion特有的模拟单元,能够提供100MHz的时钟。使用时PLL要选择输入。




1.5      RC 提供时钟输入时出现如下错误。


Error: CMP421: The XTL or RC oscillator can only drive the CLK pin of a clock macro.


        Connection to instance CLKOUT_pad/U0/U1 is a violation of this rule.


 


 


1.6      内部SRAM块的使用


ActelFPGA内部都嵌入了SRAM块,而且每个SRAM块都有硬件FIFO控制器,FIFO控制器允许将SRAM块配置成一个同步FIFO,而无须占用额外的逻辑资源。但值得注意的是,SRAM块是以固定大小的块存在(4096bits),因此在使用过程中每次生成的SRAM(或FIFO)模块,即使只有8bits的容量,也会占用一个SRAM块,同时,生成的SRAM模块大于一个SRAM块时,就要对SRAM块进行级联,在级联的过程中,会相应地使用额外的资源,例如:生成一个12288*8SRAM模块时, 1所示,即使用到了Versa Tile,但不会占用全局网络,资源占用情况如 2



1  RAM模块



2  RAM资源占用情况


虽然FIFO可以通过SRAM配置而成,但相比之下也有所不同. 3所示,生成一个12288*8FIFO,108kbitsSRAM都用上了, 1  FIFO编译数据中看到,24SRAM块连接的过程中,除了使用到RAM的资源,还占用了3条片上全局网络和一定数量的Versa Tiles.因此,在工程的设计过程中,不能忽视这部部分的资源消耗.(即使是2SRAM级联,也用到了2个全局网络, 4)



3  FIFO


1  FIFO编译数据


=====================================================================


Compile report:


===============


 


    CORE                     Used:    717  Total:  13824   (5.19)


    IO (W/ clocks)                 Used:     23  Total:    119   (19.33)


    Differential IO                  Used:      0  Total:     58   (0.00)


    GLOBAL (Chip+Quadrant)    Used:      3  Total:     18   (16.67)


    PLL                       Used:      0  Total:      2   (0.00)


    RAM/FIFO                 Used:     24  Total:     24   (100.00)


    Low Static ICC               Used:      0  Total:      1   (0.00)


    FlashROM                 Used:      0  Total:      1   (0.00)


    User JTAG                 Used:      0  Total:      1   (0.00)


    RC oscillator                   Used:      0  Total:      1   (0.00)


    XTL oscillator                 Used:      0  Total:      1   (0.00)


    NVM                      Used:      0  Total:      2   (0.00)


    AB                       Used:      0  Total:      1   (0.00)


    AnalogIO                  Used:      0  Total:     46   (0.00)


    VRPSM                    Used:      0  Total:      1   (0.00)


    No-Glitch MUX             Used:      0  Total:      2   (0.00)


 


Global Information:


 


    Type            | Used   | Total


    ----------------|--------|-------------


    Chip global     | 3      | 6  (50.00)


    Quadrant global | 0      | 12 (0.00)


 


Core Information:


 


    Type    | Instances    | Core tiles


    --------|--------------|-----------


    COMB    | 524          | 524


SEQ      | 163          | 193


The following nets have been assigned to a chip global resource:


    Fanout  Type          Name


    --------------------------


    157     SET/RESET_NET Net   : RESET_c


                              Driver: RESET_pad


                              Source: NETLIST


    111     CLK_NET       Net   : RCLOCK_c


                              Driver: RCLOCK_pad


                              Source: NETLIST


    100     CLK_NET         Net   : WCLOCK_c


                                Driver: WCLOCK_pad


                                 Source: NETLIST



4 资源占用情况


The following nets have been assigned to a chip global resource:


    Fanout  Type          Name


    --------------------------


    101     SET/RESET_NET Net   : RESET_c


                            Driver: RESET_pad


                            Source: NETLIST


    56      CLK_NET       Net   : RCLOCK_c


                             Driver: RCLOCK_pad


                            Source: NETLIST


 


下载问题


 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
3
关闭 站长推荐上一条 /3 下一条