添加收藏夹  设为首页  深圳服务热线:13751165337  13692101218
51电子网联系电话:13751165337
位置:首页 > IC型号导航 > 首字符A型号页 > 首字符A的型号第26页 > AB-125
自定义DDC112评价灯具
由吉姆· Todsen
本应用笔记补充DDC112评价
固定数据表( DEM - DDC112U ) 。它提供了额外的
在PC接口板的操作信息
( PCIB ) 。它的目的是提供一种具有信息的用户
需要编写自定义软件的PC控制
PCIB通过并行端口。此公告的讨论
在PCIB的细节,并假设与一个基本的了解
评估夹具的操作。对于一般说明
关于如何使用该DDC112评价夹具请参阅
该数据表。
在DDC112评价灯具的心脏是PCIB 。它
提供完整的控制DDC112的,提供的SCLK ,
CONV , DCLK ,等等,给DUT板。多达32,768数据
从DDC112点可以被收集在PCIB的
内存。在回读期间,该软件将引导PCIB到
通过并行端口从RAM的数据传送到PC机。
两个赛灵思现场可编程阵列提供neces-
萨利逻辑的PCIB 。这些阵列寄存器决定
各种设置,如增益和积分时间。控制
与DDC112的回读通过编程来实现
明这些寄存器虽然PC的并口。表一
给出的地址和各寄存器的说明。
图1显示了PCIB的RAM的存储器映射。该PCIB的
示意图示于图2中的原理图的两个
赛灵思阵列到9的逻辑示于图3
在这些原理图描述被存储在ROM中U5和U6启动
在PCIB ,它可以自动配置阵列U1和
U2上电。最后,对于一个示例源代码
程序给出清单1所示。
定位PC的并行端口地址
该PCIB通过PC的并行计算机通信
端口。地址并行端口是通过读取发现
PC的BIOS内存。 LPT1 ,并行端口1的地址,是
位于十六进制地址$ 40 08美元(段偏移量) 。
LPT2 ,并行端口2的地址,位于十六进制
地址$ 40 $ 0A 。
注册
有12个寄存器中的Xilinx阵列,用于
配置评估夹具。时钟速度,集成
化时间的DDC112的,增益设定等,进行控制
通过这些寄存器。表I列出的地址,并给出一个
简短描述所有这些寄存器。
前评价夹具,可以使用的寄存器必须
被初始化为它们电与所有位为低电平。为
正确的初始化,电源必须施加到DUT
加载寄存器之前板上。这可确保正确对齐
换货的PCIB侧A / B位。该位用于由
软件确定的一侧( A或B)中的每个20位的数据
从DDC112 。
一个8位的总线,用于将数据写入到寄存器中。这是公交车
同时用于地址和数据。第8位决定
总线是否具有一个地址或数据,以及低7位
无论是代表一个地址或数据值。当LOW ,第8
的位信号,该总线包含一个地址和相反如果
高电平时,总线包含将要写入的地址的数据
注册。一个选位锁存无论是地址还是数据
总线。行2至9的并行端口对应于
U 0 - U7在图2中, 8位总线。并口1号线
对应的STO在图2中,在选通位。
要写入的寄存器,先发送寄存器地址U0 - U6
有位U7低。切换选通位,申通快递,从高分到
LOW及返回到HIGH 。 STO位应该是正常
高举。寄存器地址已经被选中。发送
该数据被写入到在U0寄存器 - U6与U7的位
高,再次拨动STO和以前一样。数据将被写入到
最后一个寄存器寻址。建议您始终
发送寄存器数据之前先发送寄存器地址。这
确保你正在写正确的寄存器。
有效的寄存器地址xxx0000向xxx1011 ( 0
11)。的低4位的地址空间映射到
寄存器。高3位是在读回过程中使用
如下所述。在写入时,它被认为
寄存器,高3位被设置为“111” 。
数据采集和读回FROM THE PCIB
一旦PCIB通过加载寄存器初始化,它是
总是在两种模式中的一种:数据收集和数据回读。
注册Ctrl键1 ,第5位( “W / RB ”,在原理图)控件
的模式:“1”的数据收集, “0”为回读。
在数据采集模式下, PCIB存储从数据
DDC112在PCIB的32K X 24位RAM 。第二十
位用于存储实际DDC112数据,位22存储
侧面A / B位。其它三个位未使用。上
传感DVALID负跳变从DDC112 ,
延迟后PCIB力DXMIT LOW由寄存器设置,
RDLY 。使用两组每DDC112 20 DCLKs
却将DDC112的通道1和2中的数据到一个移位
注册。此后,该数据是使用存储在RAM中
8位总线。 RAM存储器指针自动
加后的所有24位被存储在RAM中。所有
AB-125
美国印刷1998年1月
1
3
4
5
6
1998年的Burr-Brown公司
信号,移位等,必要时存储在RAM中的数据
由PCIB产生;没有来自软件行动
数据采集过程中需要一次咬了Ctrl键1 5
寄存器被设置为HIGH。
READBACK
不同于数据采集,数据回读通过策划
软件,而不是PCIB 。由于I / O的有限数目
在并行端口,所述DDC112数据必须被复用;
在PCIB采用4位半字节时回读。软件
控制上述复用。该软件还必须reas-
桑布勒半字节一旦在PC的存储器中。
(在数据采集期间,该PCIB继续生成
DXMIT和DCLK信号加载DDC112数据到
移位寄存器。但是,这些数据能够防止被
通过三态缓冲器被存储在RAM )系10 13
和并口的第15行对应于位B6 , B7 ,
B5 ,B4和B3在图2中。 B4 - B7使用
读回的4位的半字节,而B3是用来作为“忙位”
表明从DDC112数据可用。
该地址空间的高3位控制多路复用器
(低4位用于寻址的寄存器来previ-
ously描述)。多路转换器进行寻址相同
一个寄存器,只是没有必要发送一个数据字
算账。如表I所示,在RAM地址使用
该地址空间的上半部分: 000xxxx通过110xxxx 。
因为是用寄存器地址的情况下,它是中建议
修补,该未使用的位(低4位这时间)是
设置为“1111” 。
读取RAM备份,先递减开始
RAM指针选择地址$ 6F ,然后翻转
选位,申通快递。之后递减RAM的指针,循环
通过六个4位半字节多路复用器,检索和
重组他们前进的道路上,通过选择地址$ 0F
通过$ 5F 。四位5包含了侧A / B位。当数据
回读完成后,返回第5位的寄存器Ctrl键1至HIGH到
让新的数据收集从DDC112填补RAM中。
图1示出了一个圆环状的结构,它表示
RAM的内存映射为一个单一的DDC112 DUT板。这是
因为15位的RAM指针的形状是示出圆
达到32,767而当允许翻转到0
递增(同样地,翻滚到32,767 0时
递减) 。当数据被写入到RAM中,指针是
加一或动作,顺时针方向在图1如果有足够的
在数据收集过程中时间见,指针将包裹
完全围绕和最大内存位置将
首先被覆盖新的数据。这不是一个问
LEM ,它是32K的数据最多只是一个结果。一旦
回读过程开始时,在RAM指针减
(移动逆时针)以检索最新的数据
第一。换句话说,该存储器是后进先出。
这是有趣的是,该软件并不需要
知道在RAM指针的实际值。该指针
相对调整,要么递增或递减
经过数据采集或回放过程中每一个数据点。这是
对于RAM填补为重要的是,有足够的时间来定
否则,开始回读前需,这是POS-
sible的数据回读将与旧的数据损坏。
示例软件
Example.pas显示了一个简单的DOS程序作为一个例子
如何与PCIB通信。这个程序被写入
在帕斯卡尔对Borland的Turbo Pascal的。它被设计成
示出了如何控制和从PCIB读回数据。
正因为如此,它的功能是非常有限的。软件
包括在评价夹具是更灵活和
更有助于评估DDC112的性能。
当运行程序时,系统会提示用户输入
要检索的数据点数量。该软件允许时间
为PCIB收集这些数据,然后从检索它
RAM在并行端口,并显示在屏幕上。该
数据不进行缩放或偏移,并显示在小数
符号。
该方案的主要程序是READDATA 。它的周期
通过递减在RAM指针的步骤和
读出6个4比特四位字节,并重新组合它们,以形成
的20位数据。侧面A / B位第一次检查
数据被读出。如果第一点恰好是从侧B时,它
和所有后续的B面的数据被忽略,直至第一个侧
数据发现。之后,该软件知道数据
侧面A和B之间将交替和不需要
继续检查侧A / B的标志。
0
侧A / B位
0
0
DDC112数据位19 ( MSB )
内存
指针
数据
ATA
2A数据
1B数据
2B数据
ta
1A DA
数据
2a
ta
READBACK
Da
1A
图1: RAM存储器映射为一个单一DDC112 DUT板。
2
23
22
21
20
19
0
DDC112数据位0 ( LSB )
名字
注册
DCLKRATE
地址
简述
01110000
通过将走在20MHz的晶体时钟设定DCLK的速度。对于小于8个值, DCLK是:
DCLK = ( 20MHz的)/( 2N + 2) ,其中N为所述寄存器值。
例如:如果N = 1,则DCLK = 5MHz的。
对于n
8 , DCLK等于20MHz的晶振时钟。
通过分频20MHz的晶振时钟SCLK设置的速度。对于小于8个值, SCLK为:
SCLK = ( 20MHz的)/( 2N + 2) ,其中N为所述寄存器值。
例如:如果N = 0 ,则SCLK = 10MHz的。
对于n
8 , SCLK等于20MHz的晶振时钟。
设置CONV周期,进而设置的积分时间(T
INT
) 。可编程计数器流失
SCLK用于产生一个可调节的期间50%的占空比CONV信号。牛逼
INT
(CONV的宽度)为:
( SCLK的周期) ( N + 1) ,其中,N是所述寄存器值。
例如:如果N = 4999和SCLK = 10MHz时,则:
T
INT
=(1 / 10MHz)的( 4999 + 1)= 500微秒。
为了防止毛刺在CONV改变时,可编程计数器,时钟计数器
要保持到计数器完全更新。这是通过CTRL2 0位完成
注册。
0
1
2
3
4
5
6
0
1
2
3
4
5
6
名字
G0
G1
G2
TEST_EN
未使用
W / RB
DCK_SOURCE
名字
CONV_HOLD
CONV_LO
未使用
未使用
CONV_X
CONV_XSYNC
CONV_NEGSYNC
描述
增益0 (连接到DDC112 G0输入)
增益1 (连接到DDC112 G1的输入)
获得2点(连接到DDC112 G2输入)
测试(连接到DDC112 TEST输入)
“1”写入DDC112数据到RAM中, “0”读出RAM中的PC
“1”的外部DCLK通过BNC ,“0”的内部DCLK
描述
持有CONV信号,用来改变T当
INT
CONV的切换迹象
SCLKRATE
01110001
CONV : MSB
mid2
mid1
ISB
01110010
01110011
01110010
01110101
CTRL1
01110110
CTRL2
01110111
“1”,通过BNC外部CONV上PCIB ,对PCIB “ 0 ” CONV产生
“ 1 ”外部CONV信号同步时间到SCLK
“1”的同步时间以负边缘,“0” CONV同步时间到SCLK的POS边缘
RDLY : MSB
ISB
01111000
01111001
设置回读延迟; DVALID和DXMIT之间的延迟。也就是说, DDC112信号时
数据已经准备好通过取DVALID LOW时, PCIB响应,采取DXMIT低的延迟之后。
这延迟是: ( SCLK周期) N,其中N是寄存器的值。
例如:如果N = 100和SCLK = 10MHz时,则回读延迟=(1 / 10MHz)的 100 = 10微秒。
注:为保证正常工作,该寄存器必须至少有N = 1编程。
NUM DDCS
测试脉冲
01111010
01111011
设置上的DUT板DDC112s的数量。的最大值为64 。
设置倒入DDC112的集成,同时在测试模式下测试负责数据包的数量。这
由脉冲测试线完成。如果测试被拉高,一个数据包注入。如果测试
切换一次,两个包被注入(参见DDC112数据表的详细解释
)如何测试模式的工作原理。
注入的电荷包的数目= N + 2 ,其中N为所述寄存器值。
要设置一个充电包注入,设置N = $ 7F 。
回读多路复用器
四位0
NIBBLE 1
NIBBLE 2
NIBBLE 3
NIBBLE 4
NIBBLE 5
指针递减
00001111
00011111
00101111
00111111
01001111
01011111
01101111
DDC112数据位3到0
DDC112数据位7到4
DDC112数据位11 8
DDC112数据位15 12
DDC112数据位19到16
数据位23到20方A / B位为22位: “ 1 ” A面, “ 0 ”端B.
递减RAM指针指向下一个数据字。
表一,注册和RAM的地址和说明。
3
DDC112测试夹具软件
写在Turbo Pascal的7.0
清单我
( *这个简单的程序设计来说明基本的通信
( *与PC接口板。
(*例程如XilinxWrite可用于创建更复杂的
( *软件程序。
( * Turbo Pascal的可在64K字节的数据块只分配内存。随着
( *用于存储DDC112数据Longint型变量,这限制数量
(*数据点可以存储为64K / 4 = 16K。为了检索
(*数据点的满32K可以存储在PC接口板
( *您将需要建立某种形式的阵列结构,避免了
( * 64K的限制
(*
(*
节目DDCExample ;
使用DOS, CRT ,串;
变种
pPrintPort
PCPort
readdr , wraddr , strbaddr
PDATA
Nt
NumChan
DataCkCode
SysCkCode
IntCountCode
Ctrl1Code , Ctrl2Code
DXmitDelayCode
NumChanCode
TestPulseCode
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
{***************************************************************************************}
程序XilinxRefresh ; {装载的PC接口板所有的寄存器}
{***************************************************************************************}
变种
我:字节;
开始
对于i : = 1 2做
开始
PORT [ strbaddr ] : = 0 ;
Delay(1);
{初始化端口频闪高}
:
:
:
:
:
:
:
:
:
:
:
:
:
^字;
string[4];
字;
^ Longint型;
Longint型;
字节;
字;
字;
Longint型;
字;
字;
字;
字;
Ctrl2Code : = Ctrl2Code美元7E ; {保持CONV }
xilinxWrite (7 , Ctrl2Code ) ;
Delay(100);
xilinxWrite (0, DataCkCode ) ;
xilinxWrite (1, SysCkCode ) ;
XilinxWrite ( 2 , ( ( IntCountCode SHR 21 )美元和07) ) ;
XilinxWrite ( 3 , ( ( IntCountCode SHR 14)和$ 7F ) ) ;
XilinxWrite ( 4 , ( ( IntCountCode SHR 7)和$ 7F ) ) ;
XilinxWrite (5, ( ( IntCountCode与$ 7F )));
xilinxWrite (6 , ( Ctrl1Code ));
xilinxWrite ( 8 , ( ( DXmitDelayCode美元和180) SHR 7 ) ) ;
xilinxWrite (如图9所示, ( ( DXmitDelayCode与$ 7F )));
XilinxWrite (10, NumChanCode ) ;
XilinxWrite ( 11 TestPulseCode ) ;
Delay(100);
Ctrl2Code : = Ctrl2Code ,则为1;
xilinxWrite (7 , Ctrl2Code ) ;
结束;
结束;
{释放CONV }
{***************************************************************************************}
程序InitializeLPT ;
{***************************************************************************************}
开始
如果PCPort = “ LPT1 ”,然后pPrintPort : =的Ptr ( 40美元$ 08) ;
如果PCPort = “ LPT2 ”,然后pPrintPort : =的Ptr ($ 40 $ 0A ) ;
wraddr : = pPrintPort ^ ; {并口写地址}
readdr := wraddr + 1; { “
“ }
strbaddr : = wraddr + 2 ; { “
“频闪” }
PORT [ strbaddr ] : = 0 ;
{初始化频闪喜}
结束;
{***************************************************************************************}
程序xilinxWrite ( XilinxAddr , XilinxData :字节) ;
{写入寄存器的PC接口板}
{***************************************************************************************}
开始
PORT [ wraddr ] : = $ 7F和XilinxAddr ;
Delay(2);
PORT [ strbaddr ] : = 1 ;
Delay(1);
PORT [ strbaddr ] : = 0 ;
Delay(1);
PORT [ wraddr ] : = $ 80或XilinxData ;
Delay(2);
PORT [ strbaddr ] : = 1 ;
Delay(1);
PORT [ strbaddr ] : = 0 ;
Delay(1);
结束;
(***************************************************************************************)
程序getDataMem ( n大小:字) ; {分配内存用于数据存储}
{*************************************************************************************}
变种
memget :字;
开始
memget : = n大小* sizeof运算( Longint型) ;
如果MaxAvail > = memget然后GetMem函数( pData中, memget )
其他
开始
writeln ('不可恢复的内存不足 - 程序停止');
停止;
结束;
结束;
{**************************************************************************************}
程序freeDataMem ( n大小:字) ;
{免费数据存储器}
{**************************************************************************************}
变种
memfree :字;
开始
memfree : = n大小* sizeof运算( Longint型) ;
freemem在( pData所, memfree ) ;
结束;
4
{***************************************************************************************}
程序READDATA ( VAR READERR :布尔) ;
{
{此过程中检索从PC INT数据。 BD 。它会检查以确保
}
{ 1号PT读回是从侧面A.如果它不是,它抛出B面数据
}
{路程,以便它与A侧开始
}
{**************************************************************************************}
变种
FNUM ,N
: Longint型;
BusyBit3
:整数; {数据就绪位}
笔尖,C , SideRd
:字节;
PortDataRd
:字节;
税务局, TRD , K,J
:字;
FirstTime
:布尔;
开始
FirstTime : =真; {标志来启用或检查A面B上的第一个数据PT }
READERR : =真;
XilinxWrite ( 6 , Ctrl1Code美元5F ) ; {能回读}
K: = 0; {等待对于PC接口板数据有效...}
BusyBit3 : = (端口[ readdr ]和$ 08) SHR 3 ; { INIT位3 }
虽然( BusyBit3 <> 1 )和(k < = 20000)办
开始
BusyBit3 : = ( PORT [ readdr ]和$ 08) SHR 3 ;
增量(K) ;
如果(K模40 )= 0,则延迟(1);
如果K = 20000 ,然后
开始
XilinxWrite ( 6 , Ctrl1Code元或20元) ; {启用写入到RAM }
出口;
{与回读错误}
结束;
结束;
对于N : = NT-1 downto 0做
{获取最新的点。第一...}
开始
对于C : = 1 NumChan做
开始
TRD : = N + NT * ( C- 1 ) ;
FNUM : = 0;
PortDataRd : = $ 6F ;
{递减赛灵思RAM的内存地址}
PORT [ wraddr ] : = PortDataRd ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
为IRD := 1到6做
{拿到6个半字节RAM中}
开始
PortDataRd : PortDataRd - $ 10; { MSB , MSB - 1 , ... , LSB轻咬}
PORT [ wraddr ] : = PortDataRd ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
k := 0;
{等待PC接口板的数据有效}
BusyBit3 : = (端口[ readdr ]和$ 08) SHR 3 ; { INIT位3 }
虽然( BusyBit3 <> 1 )和(k < = 20000)办
开始
BusyBit3 : = ( PORT [ readdr ]和$ 08) SHR 3 ;
增量(K) ;
如果(K模40 )= 0,则延迟(1);
如果K = 20000 ,然后
开始
XilinxWrite ( 6 , Ctrl1Code元或20元) ; {启用写入到RAM }
出口;
{与回读错误}
结束;
结束;
笔尖: = ( ( PORT [ readdr ] XOR 80美元)和$ F0 ) SHR 4 ;
{ XOR反转的第7位(占线) ,和F0摆脱了低4位,
SHR把数据位低四位}
如果税务局= 1,则SideRd : = ( (笔尖美元和4)异或4美元) SHR 2 ; {第3位LO- > SIDEA }
FNUM : = FNUM SHL 4 ;
FNUM : = FNUM或笔尖; {添加四位以最终数目}
结束;
如果FirstTime则{确保第一PT是从A面...}
开始
如果SideRd = 0,则FirstTime : =假{ SideRd = 0 -> A面;第一PT OK】
其他{第一PT B面,把它扔掉}
开始
FirstTime : = FALSE ;
对于j : = 1 ( NumChan - 1 ) {不读&扔掉sideB数据}
开始
PortDataRd : = $ 6F ; {递减赛灵思RAM内存地址}
PORT [ wraddr ] : = PortDataRd ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
为IRD := 1到6做
{拿到6个半字节RAM中}
开始
PortDataRd : = PortDataRd - $ 10; { MSB , MSB - 1 , ... , LSB轻咬}
PORT [ wraddr ] : = PortDataRd ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
k := 0;
{等待PC接口板的数据有效}
BusyBit3 : = (端口[ readdr ]和$ 08) SHR 3 ; { INIT位3 }
虽然( BusyBit3 <> 1 )和(k < = 20000)办
开始
BusyBit3 : = ( PORT [ readdr ]和$ 08) SHR 3 ;
增量(K) ;
如果(K模40 )= 0,则延迟(1);
如果K = 20000 ,然后
开始
XilinxWrite ( 6 , Ctrl1Code元或20元) ; {启用写入到RAM }
出口;
{与回读错误}
结束;
结束;
结束;
结束;
FNUM : = 0;
{重置,得到新的第一数据PT }
PortDataRd : = $ 6F ; {递减赛灵思RAM内存地址}
PORT [ wraddr ] : = PortDataRd ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
为IRD := 1到6做
{得到6啃}
开始
PortDataRd : = PortDataRd - $ 10; { MSB , MSB - 1 , ... , LSB轻咬}
PORT [ wraddr ] : = PortDataRd ;
PORT [ strbaddr ] : = 1 ;
PORT [ strbaddr ] : = 0 ;
k := 0;
{等待PC接口板的数据有效}
BusyBit3 : = (端口[ readdr ]和$ 08) SHR 3 ; { INIT位3 }
虽然( BusyBit3 <> 1 )和(k < = 20000)办
开始
BusyBit3 : = ( PORT [ readdr ]和$ 08) SHR 3 ;
增量(K) ;
如果(K模40 )= 0,则延迟(1);
如果K = 20000 ,然后
开始
XilinxWrite ( 6 , Ctrl1Code元或20元) ; {启用写入到RAM }
出口;
{与回读错误}
结束;
结束;
笔尖: = ( ( PORT [ readdr ] XOR 80美元)和$ F0 ) SHR 4 ;
{ XOR反转的第7位(占线) ,和F0摆脱了低4位,
SHR把数据位低四位}
FNUM : = FNUM SHL 4 ;
FNUM : = FNUM或笔尖; {添加四位以最终数目}
结束;
结束;
结束;
5
查看更多AB-125PDF信息
推荐型号
供货商
型号
厂家
批号
数量
封装
单价/备注
操作
    QQ: 点击这里给我发消息 QQ:2880707522 复制 点击这里给我发消息 QQ:2369405325 复制

    电话:0755-82780082
    联系人:杨小姐
    地址:深圳市福田区振兴路156号上步工业区405栋3层

    AB-125
    -
    -
    -
    -
    终端采购配单精选

QQ: 点击这里给我发消息 QQ:5645336 复制
电话:13910052844(微信同步)
联系人:刘先生
地址:海淀区增光路27号院增光佳苑2号楼1单元1102室
AB-125
√ 欧美㊣品
▲10/11+
9545
贴◆插
【dz37.com】实时报价有图&PDF
查询更多AB-125供应信息

深圳市碧威特网络技术有限公司
 复制成功!