Signal tap逻辑分析仪使用教程_第1页
Signal tap逻辑分析仪使用教程_第2页
Signal tap逻辑分析仪使用教程_第3页
Signal tap逻辑分析仪使用教程_第4页
Signal tap逻辑分析仪使用教程_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Signaltap逻辑分析仪使用教程

在之前的设计开发时,利用model辿得出中间某单元的数据,并且输入也是设

计者在拄stbench中自己给出的。但是,实际应用时,外部输入的信号不一定

和我们在testbench中所描述输入的信号相同,就有可能导致RTL仿真成功,

但是下板测试失败。

signaltaplogicanalyzer采集并显示FPGA设计中的实时信号行为,从而无

需额外的I/O管脚或者外部实验室设备即可检查正常器件操作期间内部信号的

行为。

FPGADevice

在数据获取期间,器件中的存储器模块存储采集的数据,然后通过JTAG畦电

缆将数据传输到逻辑分析仪。

下图为signaltaplogicanalyzer的任务流程。

设计要求

利用逻辑分析仪测量出电脑发送则(波特率为M5200时)是每bit时间宽

度。

设计分析

在UART协议中规定了每bit的时间宽度应该是1秒钟除以波特率,但是在实际

电路中相同标号的两个晶振也会有一定的误差。我们可以利用逻辑分析仪(也

就是利用FPGA的时钟)去测量一下PC发送UART时的bit时间宽度。

由于波特率为115200,在采样时,一般采用16倍频采样。此时采样频率比较

高,由基础的50MHz的时钟不能够做出精确的16倍频,由此也会带来一定的误

差。

利用逻辑分析仪就可以看到在上述两个都有误差的情况,真实采样的偏差,以

及偏差对我们的设计是否有影响。

设计实现

将_9_uart_drivc复制一份,命名为」O_uart_drive_signal_tap。然后打开此

工祖将底特率修改为115200。

点击tools->signaltaplogicanalyzer。

^ocessing|ToolsWindowHelp

RunSimulationTool

LaunchSimulationLibraryCompiler

LaunchDesignSpaceExplorerII

TimingAnalyzer

Advisors

公ChipPlanrer

令DesignPartitionPlanner

NetlistViewers

—,吁SignalTapLogicAnalyzer

gIn-SystemMemoryContentEditor

sLogicAnalyzerInterfaceEditor

在右侧窗口signalconfiguraUon中,首先需要指定一个采样时钟信号。

SignalConfiguration:x

ClockEi

逻辑分析仪在采样时钟的每个上升沿进行数据采样。逻辑分析仪不支持在采样

时钟的下降沿进行数据采样。设计中的任何信号都可以用作采样时钟。但是,

为了获得最佳的数据采样结果,请使用与被测信号同步的全局时钟。

在本设计中,所有的信号都是由外部的elk信号进行驱动的,所以此采样时

钟,选择为elk。点击clock对话框后面的三个点。将filter选择为2j_n:

all,点击list,在matchingnodes中选择elk,点击“大于",在nodes

found中出现elk,然后点击ok。

SignalConfiguration:x

Clockelk国

配置完采样时钟信号后,需要配置采样深度。

针对被采样的数据中的每个信号,采样深度指定了采样和存储的样本的数量。

在器件存储器资源有限的情况下,由于所选的深度太大,设计可能无法编译。

此时需要降低采样深度以减少资源使用。

采样深度乘以采样的间隔就确定了采样的时间宽度。现在我们要做的是采样一

个UART的协议帧,一个协议帧共有12个bit。按照115200的波特率,采样的

时间宽度应该是104166ns,所以采样深度应该是5208,在此选择采样深度为

8Ko

RAMtype:Auto

24Ksamplesegments

当确定好采样深度后,可以指定逻辑分析仪在触发事件之前和之后采样的数据

量。

逻辑分析仪提供三种选择。Pre表示12%的存储深度用作触发事件之前,88%的

存储深度用作触发事件之后;Center表示50%的存储深度用作触发事件之前,

50%的存储深度用作触发事件之后;Post表示88%的存储深度用作触发事件之

前,12%的存储深度用作触发事件之后。

在此选择Preo

配置好这些信息后,开始添加需要观测的信号。

在setup界面,在空白界面双击,添加想要观测的信号。

需耍观测的信号有uarljxd、uartrxd>cap_cnto

uarttxd和uartrxd为端口信号,选择filter时,选择PIN:all即可,

cap_cnt为内部信号,选择filter时,选择signaltap:pre-synthesis。

aixo_signaltap_OLockmodeAllowallchanges

NodeDataEnableTriggerEnableTriggerConditions

iVBasicAND▼

TypeAbasName1010

至J

suart_rxdE

05uart_txd回霆

*e..st|rx_ctrtrx-ctri_inst|cap_cnt[7.0]El面XXh

将uart_rxd的下降沿没置为触发条件。

在uart_rxd的triggerconditions的位置,右击,选择fallingedge。

auto.90mrtjp.oLockmoderAAowaftchanges.

ModeDautiuMeTnaaerIrwMeTrwprCooOtxms|

n]”一。▼JANO▼]

♦"T1

-x口uart_tBdBAND/OR

—@.AHO

♦st|nictfiractHinst|capcnt(70]

OR

HAND

NOR

XOR

XNOR

roue

FALSE

Compare

"ZDorHCare

JLLaw

J^\.FattingEdge

/Ra>ngEdge

/Tf

XEftherEdge

7DataK*upInsertValue

auto.sisnaltap.OLockmodeAllowailchanges

NodeDataEnableTnggerEnableTn^erConditions

TypeAbasN«me-1w1JBaskAND▼

in\

.uart_n(d叨画

.uart_txd回a姿

>_5t|rx_ctrtnt_ctrijn>t|cap_cnt(7.0]Bfl63XXh_______

点击保存,保存到qprj,命名为stpl.stp。

使能逻辑分析仪。点击Yes。

回到quarlus界面,进行综合分析并形成配置文件。

在工程向导的结构界面,可以看到在结构中出现了两个未知的组件。这两个就

是逻辑分析仪。

ProjectNavigator■:Hierarchy▼<Q)(5x

Entityinstance

ACycloneIVE:EP4CE6E22C8

,尊uart_drive_example电

sld_hub:auto_hub

sld_signaltap:auto_signaltap_0

test_ctrl:test_ctrtjnst

»尊uart_drive:uart_drive_inst

在报告中,可以看到使用的逻辑资源和存储器资源增多。

N«Filter»

FlowStatusSuccessful-WedJun2417:42:372020

QuartusPrimeVersion18.0.0Build61404/24/2018SJStandardEdition

RevisionNameuart_drive

Top-levelEntityNameuartdriveexample

FamilyCycloneIVE

DeviceEP4CE6E22C8

TimingModelsFinal

Totallogicetements1,245/6,272(20*)

Totalregisters970

Totalpins4/92(4%)

Totalvirtualpins0

Totalmemorybits86,096/276,480(31%)

EmbeddedMultiplier9-bitelements0/30(0%)

TotalPLLs0/2(0%)

回到signaltap界面,并且连接PC和开发板。

在hardware中,选择USB-blaster。

点击sofmanager后面的三个小点,选择生成的sof文件,然后点击下载。

JTAGChainConfiguration:JTAGreadyx

Hardware:Ubb-Blaster[UbB-U]▼setup...

Device:@1:10CL006(Y|Z)/10CL010(Y|;▼ScanChain

tput_files/uart_drive.sof

点击运行分析。

Krfp

tnuer2020/06/2417.4007LockmodeAllowaichangu

此时逻辑分析仪就在等待被触发。

触发条件为uart_rxd的下降沿,打开串口助手,配置好后,发送一个数据

Ho

串口设置

重新搜索串口|校验位|Odd苛二]

端口号|COM3二]数据位国―3

波特率|ii5?nojr]倬止位[ih;一

DTR|RTS|rD^"rDSR"[-CfS"|~Rr

发送之后,逻辑分析仪中出现了波形。因为发送为11,发送数据从低位开始,

故而第一个数据应该为1。所以第一端低电平为起始位,可以通过采样的数字

标号,确定它的时间宽度。

左键是放大,右键是缩小。

左侧为0,因为利用下降沿作为触发条件。放大左侧数字为434。

0705C”elapsed)

”0

0]£Z!L

所以起始位的时间宽度为434x20

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论