13150|12

21

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

【spartan6报告】SAR,3G移动网络Lu、Lub接口的检测 [复制链接]

开发板试用报告
报告一:
一、 设计简介
目前手上的这个项目,本来是计划用Spartan 6的,但是最后因为很多原因吧,还是使用了Spartan-3A的芯片,这次很荣幸获得了开发板的试用机会,所以打算把手上的这个项目移植到开发板上,进行性能对比及评估。
首先进行个项目的简单介绍,名称是:SAR,它主要用于3G移动网络Lu、Lub接口的检测,目前项目处于全面调试阶段。

二、 硬件结构
SAR的硬件结构如下:


 
                          Figure 1
Spartan®-6 FPGA 嵌入式开发板正好有GMII接口,而且与SAR用的芯片一样,都是88E1111,SAR对数据处理的流程是这样的:接收GMII接口进来的以太网包,将数据转成ATM信元格式,通过PM5379做个外环回,再重组成以太网包,从GMII接口送出,输出到上位机,进行分析工作;如果用Spartan®-6 FPGA开发板的话,我可以把PM5379做成内环回,在FPGA内部环回,我们采用的是DDR,开发板上用的是DDR3,所以这里要替换,(其实这也是我申请这次开发板试用的主要原因,亲身体会一下DDR3的精彩之处),至于ZBT SRAM,它本来是用来存储重组过程中的一些数据表,这里我可以进行简化;所以SAR移植到Spartan®-6 FPGA开发板上的硬件结构如下:

                      Figure 2

报告二:
三、 软件结构
为适应Spartan®-6开发板的使用,将SAR的软件结构改为如下所示,在我们的设计中,支持三种数据流的处理:aal2、aal5、cell模式,为了简化,在此只使用aal5作为例子:


                                Figure 3

Gmii_drx: 接收以太网包,并进行8转32的串并转换,提取atm帧存在FIFO中;
aal5_dseg:读取atm帧,将其转为atm cell模式,存在内部512x36的FIFO中;
utop_dtx:完全按照utopia L3接口协议进行数据的传送;
utop_urx:接收atm cell数据,将其按类型分类,存储到对应的FIFO中;
aal5_ures:按PVC的不同,将离散的cell连续存储到相同PVC对应的buffer中,此buffer存在于DDR存储器中;
aal5_utx:从DDR中读出连续的atm cell,组成atm帧;
Gmii_utx:将atm帧打包成以太网帧,送出FPGA;
queue: 进行队列的分配与回收;

四、 工程搭建
1) 建立工程
选择FPGA芯片型号xc6slx45t-3fgg484,使用verilog HDL。工程顶层文件名称:sar_utopia_top1;

 
                                Figure 4

2) 工程目录结构
F:\Spartan605:
\coregen: 存放FPGA核文件;
\rtl: 存放source代码;
\sar_sp6:工程PAR文件夹;
\testbence:存放工程的测试激励;
 


                               Figure 5

待续。。。。。。。。。。。。

此帖出自FPGA/CPLD论坛

最新回复

一句话点醒慌乱人啊 ,之前没加secureip库,modelsim一直错误,搞了一下午  详情 回复 发表于 2012-7-12 17:58
点赞 关注
 

回复
举报

103

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
不错不错:D ,顶一下
此帖出自FPGA/CPLD论坛
 
 

回复

21

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

ddr3核仿真问题

在仿真时,用ISE启动ModelSim,但是总报下面的这个错误,大家有遇到过的吗,如何解决?谢谢

# ** Error: D:/Xilinx/11.1/ISE/verilog/src/unisims/MCB.v(1646): Module 'B_MCB' is not defined.
报告三:

<!--[一、  DDR3控制核的产生

1) 新建工程

选择开发板上的FPGA型号。


                           Figure 6

<!--1)    设置生成语言

选择控制核实现的硬件描述语言。MIG核与其它的FPGA核不太一样,它生成的是源文件代码,所以在使用时,添加到我们实际工程中的也是这些源文件。所以建议你平时习惯哪个硬件语言,就将核生成哪个语言的。这样读和更改起来都容易一些。


Figure 7

2)   选择FPGAbank

这与spartan6之前的有些不一样,只能选择左右bank,左右bank的速度要快一些。


Figure 8

 

3)     选择DDR3芯片型号

选择DDR3运行的时钟及芯片型号;


                           Figure 9

4)     设置核工作端口模式

这步之前还有设置DDR3核的工作参数。下面是设置端口的模式,记得之前用的这步与参数设置是一起的,只选择数据宽度就ok了,这里貌似功能更多一些。


Figure 10

5)     生成文件
The design files are located at
F:/Spartan605/ddr3:

- mig_33.veo:
veo template file containing code that can be used as a model
for instantiating a CORE Generator module in a HDL design.

- mig_33.xco:
CORE Generator input file containing the parameters used to
regenerate a core.

- mig_33_flist.txt:
Text file listing all of the output files produced when a customized
core was generated in the CORE Generator.

- mig_33_readme.txt:
Text file indicating the files generated and how they are used.

- mig_33_xmdf.tcl:
ISE Project Navigator interface file. ISE uses this file to determine
how the files output by CORE Generator for the core can be integrated
into your ISE project.

- mig_33 directory.

In the mig_33 directory, three folders are created:
- docs:
This folder contains user guide.

- example_design:
This folder includes the design with synthesizable test bench.

- user_design:
This folder includes the design without test bench modules.

The example_design and user_design folders contain several other folders
and files. All these output folders are discussed in more detail in
Spartan-6 FPGA Memory Controller user guide (ug388.pdf) located in docs folder.

 

6)     目录结构

Docs:参数文档

Example_design:这个是例子,数据产生在工程内部,产生的数据写入DDR3,再读出,读出的数据与产生的另一份数据(同样的产生方式)进行比较,整个过程让大家熟悉DDR3核读写的机制。

User_design:用户设计,数据产生在工程外,以测试激励的方式给出,用户在使用时可将本设计的数据产生模块来代替核自带的,来访问核。


Figure 11

Example_design下的目录结构:

Par:工程文件夹;

Rtl:源文件;

Sim:仿真文件,有DDR3 mem的仿真模型,使用时要注意参数的设置;


                              Figure 12


 

此帖出自FPGA/CPLD论坛
 
 
 

回复

21

帖子

0

TA的资源

一粒金砂(初级)

4
 

开发板试用报告四&五及全部附件

如题! 开发板试用报告.rar (695.59 KB, 下载次数: 26)

报告四:

<!--[一、DDR3控制核的仿真

<!--[if !supportLists]-->1) <!--[endif]-->双击F:\Spartan605\ddr3\mig_33\example_design\par下的create_ise.bat,生成test.xise工程文件,手动添加测试文件及ddr3模型。编译仿真库后,通过ISE启动ModelSim进行仿真;


Figure 13

 

2)启动ModelSim时,总报告下面的错误,

# ** Error: D:/Xilinx/11.1/ISE/verilog/src/unisims/MCB.v(1646): Module 'B_MCB' is not defined.

   不知是什么原因,请有经验的前辈指点!

3)改用ISim仿真


                                 Figure 14

4)写操作:


                               Figure 15

5) 读操作:


Figure 16

6)参数文件

在使用DDR3核的过程中,有一点感触很深,之前用Spartan 3aDDR2,参数设置真是一件头疼的事,`include总会给添一些麻烦,路径问题成为DDR2核使用的一个必须要关注的问题;读过DDR3核的代码,看到它的实现方式是采用parameter方式,这样就可读性强多了,而且对照找起来也比较容易;

 

<!--[二、性能评估

1)  分配管脚:使用Planahead进行管脚及DCMBUFG位置的约束,生成UCF文件,添加到工程中;


                           Figure 17

2)PAR工程,Spartan 3a上实现SAR,占用资源如下图所示:


                                Figure 18

3)Spartan6上实现SAR,占用资源如下图所示:之前比较关注的是BlockRamSpartan 3a只有84个,我们经常用到70多个,资源总感觉特紧。Spartan6116RAMB16BWERs另外还有232RAMB8BWERs


Figure 19

 

报告五:

<!--[三、 板级实现

1)   加载程序:

在生成bit文件后,使用Impact加载FPGA,如果要使用分析仪的话,也可以使用Chipscope直接加载;


                              Figure 20

2) 发包:

这个发包软件是我们自己设计的,里面可以配置MAC地址,发包间隔,发包数量,及一些与ATM相关的配置参数;


                                  Figure 21

3) ChipScope观察:

由于时间关系,我只验证到下行方向的设计,就是从以太网包到ATM信元的处理,至于ATM信元到以太网包的重组,没有来得及在SP6上验证,如果有机会,希望能继续完成这部分的验证;


                                Figure 22

四、试用心得

时间过得很快,一个月试用时间转眼就结束了,总得感觉是这个开发板的功能很强大,很多东西都没有来得及尝试。对于Spartan6的使用,现在还是没有迈入这个门槛,希望公司下个项目能选择这个系列的芯片,因为里面新东西都得是够有吸引力。到现在为止也用过几个Xilinx的开发板,每次一上电,就很惊叹两字--漂亮。设计得真的是很好,在公司我的工位上放着我们自己设计的电路板,与旁边的Spartan605相比,真的是丑不可当。所以这次试用,我们的硬件工程师也研究了一阵这个板子,吸取了一些好的设计方法。嗯,马上就要与这个板子说byebye了。很感谢它带给我们的快乐,也希望真正有一天能开始在Spartan6上玩转自己的设计。最后,还是感谢eeworld给我们的这次试用机会,非常不错!希望你们越办越好!


此帖出自FPGA/CPLD论坛
 
 
 

回复

103

帖子

0

TA的资源

一粒金砂(高级)

5
 
你的Modelsim是6.5版本针对ISE编译过的么
此帖出自FPGA/CPLD论坛
 
 
 

回复

27

帖子

0

TA的资源

一粒金砂(高级)

6
 
ModelSim module 'B_MCB'is not defined 的问题,检查一下编译Modelsim仿真库的时候有没有包含SecureIP,因为MCB是通过SecureIP来仿真的,Unisim里的部分只是一个wrapper。
此帖出自FPGA/CPLD论坛

点评

一句话点醒慌乱人啊 ,之前没加secureip库,modelsim一直错误,搞了一下午  详情 回复 发表于 2012-7-12 17:58

赞赏

1

查看全部赞赏

 
 
 

回复

21

帖子

0

TA的资源

一粒金砂(初级)

7
 
这里面没有SecureIP选项,在哪里具体设置

此帖出自FPGA/CPLD论坛
 
 
 

回复

27

帖子

0

TA的资源

一粒金砂(高级)

8
 
查看一下modelsim.ini中有没有类似的一行:
secureip = C:\Xilinx\SimLibs\11.4\ISE\/secureip
此帖出自FPGA/CPLD论坛
 
 
 

回复

21

帖子

0

TA的资源

一粒金砂(初级)

9
 

原帖由 Ricky_su 于 2010-7-14 19:31 发表 查看一下modelsim.ini中有没有类似的一行: secureip = C:\Xilinx\SimLibs\11.4\ISE\/secureip

有这句话:

secureip = D:\Xilinx\11.1\ISE\verilog\mti_se\6.5b\nt/secureip

可以吗?

此帖出自FPGA/CPLD论坛
 
 
 

回复

21

帖子

0

TA的资源

一粒金砂(初级)

10
 
有那一句
此帖出自FPGA/CPLD论坛
 
 
 

回复

27

帖子

0

TA的资源

一粒金砂(高级)

11
 
Modelsim vsim命令后要加 -L secureip
默认的do文件里没有加。
此帖出自FPGA/CPLD论坛
 
 
 

回复

21

帖子

0

TA的资源

一粒金砂(初级)

12
 

原帖由 Ricky_su 于 2010-7-14 20:17 发表 Modelsim vsim命令后要加 -L secureip 默认的do文件里没有加。

 

你好,谢谢你的回复,我是在ISE中,直接双击 Compile HDL Simulation Libraries,采用这种方式编译库的,不是采用命令行的方式,那您知道如果设置 -L secureip 吗?

此帖出自FPGA/CPLD论坛
 
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

13
 

回复 6楼 Ricky_su 的帖子

一句话点醒慌乱人啊 ,之前没加secureip库,modelsim一直错误,搞了一下午
此帖出自FPGA/CPLD论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表