橄榄之家's profile橄榄之家PhotosBlogListsMore Tools Help

橄榄之家

访问统计

page stats

橄榄之家

感谢访问!
Please wait...
Sorry, the comment you entered is too long. Please shorten it.
You didn't enter anything. Please try again.
Sorry, we can't add your comment right now. Please try again later.
To add a comment, you need permission from your parent. Ask for permission
Your parent has turned off comments.
Sorry, we can't delete your comment right now. Please try again later.
You've exceeded the maximum number of comments that can be left in one day. Please try again in 24 hours.
Your account has had the ability to leave comments disabled because our systems indicate that you may be spamming other users. If you believe that your account has been disabled in error please contact Windows Live support.
Complete the security check below to finish leaving your comment.
The characters you type in the security check must match the characters in the picture or audio.
No list items have been added yet.

Feed

The owner hasn't specified a feed for this module yet.
No list items have been added yet.
May 26

回波损耗,反射系数,电压驻波比以及S参数的含义和关系

回波损耗,反射系数,电压驻波比, S11这几个参数在射频微波应用中经常会碰到, 他们各自的含义如下:

回波损耗(Return Loss):  入射功率/反射功率, 为dB数值
反射系数(Г):  反射电压/入射电压, 为标量
电压驻波比(Voltage Standing Wave Ration): 波腹电压/波节电压
S参数: S12为反向传输系数,也就是隔离。S21为正向传输系数,也就是增益。S11为输入反射系数,也就是输入回波损耗,S22为输出反射系数,也就是输出回波损耗。

四者的关系:
VSWR=(1+Г)/(1-Г)            (1)
S11=20lg(Г)                     (2)
RL=-S11                          (3)

以上各参数的定义与测量都有一个前提,就是其它各端口都要匹配。这些参数的共同点:他们都是描述阻抗匹配好坏程度的参数。 其中,S11实际上就是反射系数Г,只不过它特指一个网络1号端口的反射系数。反射系数描述的是入射电压和反射电压之间的比值,而回波损耗是从功率的角度来看待问题。而电压驻波的原始定义与传输线有关,将两个网络连接在一起,虽然我们能计算出连接之后的电压驻波比的值,但实际上如果这里没有传输线,根本不会存在驻波。我们实际上可以认为电压驻波比实际上是反射系数的另一种表达方式,至于用哪一个参数来进行描述,取决于怎样方便,以及习惯如何。

回波损耗与VSWR之间的转换关系, 读者可以采用上面的式子1和2来手动计算.

May 25

结婚两周年

今天是结婚两周年的纪念日, 因此写一篇文章来纪念这个特殊的日子.

今天本来想给老婆送点礼物的, 比如一面椭圆形的不锈钢的镜子, 首饰盒等, 不过现在住的地方不是太宽敞, 等着以后搬到新家再给老婆买. 今天陪老婆配了一副眼镜, 这也是她想了很久的, 最近一直比较忙, 直到前几天去北京三院验了光, 才有空抽出时间来去挑眼镜. 在亮视点(雪亮)配的, 小姐的服务很周到, 很耐心, 刚好儿童节能拿到眼镜image

回想到前年去三亚拍婚纱照了, 一直没有把他记录下来, 随着时间的推移都渐渐的淡忘了, 今天补一下功课. 先说说婚纱照, 是在三亚的最爱拍摄的, 在去三亚之前, 看了一个同事在三亚最爱拍的外景婚纱照, 觉得不错, 因此, 决定去那里看看. 在走了几家婚纱店, 看过他们的样片(最近几天拍的比较好的婚纱照)之后, 最终决定在最爱拍一套全外景的婚纱照, 景点选在山海天, 主要是那里景色相对比较全, 既有礁石, 又有椰树草地, 还有海滩. 拍外景天气非常重要, 在三亚, 经常会有下雨的时候, 或者是多云的天气, 这会很大程度上影响婚纱的拍摄效果. 我们运气很好, 碰巧那天晴空万里, 天上一点云彩都没有, 除了把人晒的睁不开眼之外, 对于拍摄来说, 实在是太好不过了. 摄影师我们是看了样片之后, 问了最好的一组的摄影师而定的, 后来证明当初的决定非常明智, 阿刚师傅拍摄的外景非常漂亮. 由于当时没有坚持挑选化妆师, 结果给我们配的化妆师水平一般, 化完妆之后老婆就不是特别满意, 我也觉得很一般. 不过幸好化妆助理非常好, 好像是叫刘婷, 有些记不太清楚了, 做的发型以及一些配饰都恰到好处, 服务也很好. 化妆花了不少时间, 出车的时候已经差不多十二点多了. 摄影师阿刚以及两个拍摄助理, 化妆助理跟我们一块出去, 那时候的太阳那叫个晒啊. 阿刚师傅浑身被太阳晒的黑乎乎的, 他从来不戴帽子(拍摄晚景建议挑选长得黑的摄影师, 说明拍的多, 经验丰富, 呵呵). 我们先是穿着婚纱拍了草地椰树的外景, 然后是拍摄岸边和大海, 然后换成晚礼服拍摄了岸上的一些景色, 最后在礁石(快到黄昏了)我们坚持换成婚纱拍摄了礁石, 然后在海滩拍摄了岛服. 第二天去最爱选片, 拍了一百多张, 不过好多由于我的表情不好而浪费了, 最终挑了三十多张, 辛苦了摄影师了, 顶着烈日为我们拍摄整整一个下午.

我们在三亚的行程是这样安排的, 现在亚龙湾住一天, 然后在吴之洲岛住一天, 然后住在大东海. 拍婚纱其实是到了大东海之后的事情了. 在吴之洲岛我们很幸运的住上了临海木屋, 每个房间是一个独立的楼. 去吴之洲岛很方便, 住岛上的话他们会负责接送的. 在岛上住一天感觉很好, 尤其是等晚上来岛上参观的人都回去了, 岛上很安静, 可以静静的听着海浪的声音, 那种感觉真的很棒. 每个木屋的旁边有一个温水的池子, 在里边泡泡水感觉特好, 每次回到木屋, 老婆都要去那里泡一会儿, 我就趁机拍了不少写真 image  . 岛上的植被, 空气, 景色都很好, 到处都有各种鲜花盛开. 去海里游泳是一件很惬意的事情了, 这里的海水很清澈, 不过浪稍微有些大, 往大海深处游的时候由于没有戴眼镜, 心里有一种不由自主的恐惧. 亚龙湾的大海比较宁静, 比较适合水性不太好的, 在那里有不少人游出圈子了, 我游得比较远, 不过由于不太清楚海域, 就没太敢游太远. 在大海里游泳实在是一件很惬意的事情, 尤其是那种往大海深处游的感觉, 既有一种恐惧的感觉, 前方是茫茫的大海, 看不到边际, 不知道自己到底离岸有多远, 又有一种兴奋和成就感, 每往大海深处游一米, 你就可以感觉到与大海更加接近. 临海木屋比较贵, 一个晚上要一千多, 我们住的房间号是6686, 离海比较近, 观景也不错. 观海木屋价格实惠一些, 当时记了一下号码, 房间号8628, 29, 30是在最高处的, 观景最好. 木屋里边有一股比较大的油漆味, 是唯一的不足之处, 不知道是当时刚刚重新装修了还是木屋需要经常的上漆保养. 还有一点就是去吴之洲岛一定要带上鱼竿, 那里的海鱼经常成群在岸边游, 就像人与自然里看到的大片鱼群, 你可以很清晰的看到佴刚一入水, 就被鱼儿咬着跑了, 不用过一会儿就可以钓上几十条来.

亚龙湾的沙滩很出名, 在沙滩上走感觉很好, 还有就是去海边游泳了. 亚龙湾唯一的缺憾是离市区比较远, 去市区吃海鲜不是特别方便, 如果租一辆车就没问题了. 去三亚当然要吃海鲜了, 我看了很多攻略, 最终选择了春园海鲜广场, 在明记和168(两个挨在一起, 看起来比其他地方干净一些, 网上推荐比较多)吃了几顿, 味道很鲜, 当地人显然擅长做海鲜. 海鲜和加工是分开的, 具体的可以参考游记, 比如携程或者海南自游网等.

今天早上答应了老婆写一点东西来纪念的.

几年前, 我轻轻的一牵手

就牵着你走过了七个春秋

在这七年里

我们一起为申奥成功而欢呼雀跃

我们一起在昆明湖的冰上写下了爱情宣言

我们一起在灵隐寺里虔诚的祈祷

我们一起度过了非典的隔离时光

我们一起看可爱的熊猫

分离, 不会冲淡我们的记忆

只会使我们的心灵更加接近

思念, 不会侵蚀我们的爱情

只会使我们更加坚定

我愿意做你的纤夫

牵着你走一辈子

终于, 在两年前的日子里, 我们走到了一起

你, 成为我的妻子

我, 成为你的丈夫

长沙十月, 独立橘子洲头

怀念故人, 遥想未来

古人匈奴未灭, 何以家为

我今事业未成, 仍需努力

重返京城, 家人团聚

我们的家庭充满了我们的爱

我们的家庭充满了未来的憧憬

我们一起奋斗, 一起突击

百事待兴, 任重道远

来日方长, 我会努力

May 24

运放关于带宽和增益的主要指标以及定义

开环带宽:开环带宽定义为,将一个恒幅正弦小信号输入到运放的输入端,从运放的输出端测得开环电压增益从运放的直流增益下降3db(或是相当于运放的直流增益的0.707)所对应的信号频率。这用于很小信号处理。

单位增益带宽GB:单位增益带宽定义为,运放的闭环增益为1倍条件下,将一个恒幅正弦小信号输入到运放的输入端,从运放的输出端测得闭环电压增益下降3db(或是相当于运放输入信号的0.707)所对应的信号频率。单位增益带宽是一个很重要的指标,对于正弦小信号放大时,单位增益带宽等于输入信号频率与该频率下的最大增益的乘积,换句话说,就是当知道要处理的信号频率和信号需要的增以后,可以计算出单位增益带宽,用以选择合适的运放。这用于小信号处理中运放选型。

转换速率(也称为压摆率)SR:运放转换速率定义为,运放接成闭环条件下,将一个大信号(含阶跃信号)输入到运放的输入端,从运放的输出端测得运放的输出上升速率。由于在转换期间,运放的输入级处于开关状态,所以运放的反馈回路不起作用,也就是转换速率与闭环增益无关。转换速率对于大信号处理是一个很重要的指标,对于一般运放转换速率SR<=10V/μs,高速运放的转换速率SR>10V/μs。目前的高速运放最高转换速率SR达到6000V/μs。这用于大信号处理中运放选型。

全功率带宽BW:全功率带宽定义为,在额定的负载时,运放的闭环增益为1倍条件下,将一个恒幅正弦大信号输入到运放的输入端,使运放输出幅度达到最大(允许一定失真)的信号频率。这个频率受到运放转换速率的限制。近似地,全功率带宽=转换速率/2πVop(Vop是运放的峰值输出幅度)。全功率带宽是一个很重要的指标,用于大信号处理中运放选型。

建立时间:建立时间定义为,在额定的负载时,运放的闭环增益为1倍条件下,将一个阶跃大信号输入到运放的输入端,使运放输出由0增加到某一给定值的所需要的时间。由于是阶跃大信号输入,输出信号达到给定值后会出现一定抖动,这个抖动时间称为稳定时间。稳定时间+上升时间=建立时间。对于不同的输出精度,稳定时间有较大差别,精度越高,稳定时间越长。建立时间是一个很重要的指标,用于大信号处理中运放选型。

等效输入噪声电压:等效输入噪声电压定义为,屏蔽良好、无信号输入的的运放,在其输出端产生的任何交流无规则的干扰电压。这个噪声电压折算到运放输入端时,就称为运放输入噪声电压(有时也用噪声电流表示)。对于宽带噪声,普通运放的输入噪声电压有效值约10~20μV。

差模输入阻抗(也称为输入阻抗):差模输入阻抗定义为,运放工作在线性区时,两输入端的电压变化量与对应的输入端电流变化量的比值。差模输入阻抗包括输入电阻和输入电容,在低频时仅指输入电阻。一般产品也仅仅给出输入电阻。采用双极型晶体管做输入级的运放的输入电阻不大于10兆欧;场效应管做输入级的运放的输入电阻一般大于109欧。

共模输入阻抗:共模输入阻抗定义为,运放工作在输入信号时(即运放两输入端输入同一个信号),共模输入电压的变化量与对应的输入电流变化量之比。在低频情况下,它表现为共模电阻。通常,运放的共模输入阻抗比差模输入阻抗高很多,典型值在108欧以上。

输出阻抗:输出阻抗定义为,运放工作在线性区时,在运放的输出端加信号电压,这个电压变化量与对应的电流变化量的比值。在低频时仅指运放的输出电阻。这个参数在开环测试。

May 23

半导体市场概况

先从宏观看起, 最底下的一个表格给出半导体行业的按照销售额排名情况, 是IC insights发布的, 虽然信息有些老, 但是作为一个大致的了解已经足够了. Intel, Samsung, TI占据三甲, 还有不少计算机相关芯片公司也占据了不少位置, 比如CPU, 显卡芯片, 内存芯片等厂商都占据了比较前面的位置, 可以看出计算机销售对半导体产业的影响.

从表格中还可以看出模拟电路主要的供应商的情况. TI, ST, NXP, Infineon, Analog, NS, Maxim, Linear, Freescale. 其中ST跟Nokia关系不错, 应该有不少产品供到Nokia的手机以及诺西手中, 其在移动通信, 汽车, 计算机方面市场不错; NXP的许多产品应该是被Philips所消耗, 因此, 主要集中在消费类上面; Infineon从Siemens分离出来, 跟Siemens有较为紧密的联系, 其无线以及汽车产品实力较强; Freescale则最近收到Moto手机不景气的影响, 最近销售状况不是很理想. 除了以上几个公司之外, TI, Analog, NS, Maxim, Linear的产品比较接近, 又有一些差别, TI, Analog, NS似乎走得是大众路线, 在标准模拟产品上投入较大, 产品线较为齐全, 提供许多免费的工具等, 做一些比较通用的市场. Maxim走的是比较Vertical的路线, 一般在学校里比较少用到Maxim的模拟产品, Maxim有自己的用户群, 跟客户关系比较密切, 产品独有性较强, 因而利润率较高. Linear走的是高性能领域, 一般产量相对比较少, 利润率比较高.

一些调查公司给出的10大厂商的排名大致是德州仪器、意法半导体、英飞凌、飞利浦、模拟器件公司(ADI)、国家半导体、美信(Maxim)、凌特公司(Linear)、飞思卡尔和东芝, 至于在具体的行业内部, 则各自有各自的市场. 在运放领域, Analog是老大, 而在接口领域, TI是老大, 在电源领域, 依次是TI, NS, Linear, Maxim; 在Data Converter领域, 依次是ADI(40%), TI(15%), Maxim, NS, Linear.

TI公司模拟器件生产涵盖所有产品,采取多元化发展战略,无论在标准模拟器件和混合信号电路市场上公司都占有重要地位,接口电路几占市场半壁江山,放大器和电源电路也占有相当比重。ST公司的优势在混合信号电路,尤其在汽车、计算机和移动通信应用方面首屈一指。在标准模拟器件方面略逊TI公司一筹。Infineon公司没有标准模拟器件生产,产品集中在混合信号电路,在有线/无线通信方面具有较强实力,汽车用产品及分立电源晶体管也都是公司的强势产品。公司模拟器件营收只占其半导体全部营收的三分之一,是10大模拟器件所占比重较小的一家。NXP公司模拟器件所占比重和Infineon相仿,产品主打混合信号电路,在消费类及汽车用产品方面实力较强,标准模拟器件虽各类产品都有生产,但市场份额很小。Analog公司的模拟器件占有公司半导体营收70%以上。Analog公司主理标准模拟器件生产,数据转换器和放大器占有较大市场份额,混合信号电路纵有生产,但除计算机应用产品较好外,其余产品市场份额均极小。NS深耕标准模拟器件,公司半导体营收主要依靠电源电路和放大器,混合信号电路虽也占有相当比重,但除消费产品应用产品之外,比例都不大。Maxim公司的模拟器件所占公司营收比重逐年提高,现已占到85%。电源电路和接口电路是公司的拳头产品,混合信号电路则以工业应用产品为主。Freescale公司的强势在汽车、移动通信以及工业用混合信号电路,标准模拟器件仅有少量放大器生产。

下面是一个比较老的模拟器件的排名, 现在情况估计已经发生一些变化, 但是应该具有一定的参考意义. 下面还给出了两幅图表, 统计了中国电源管理IC市场以及按照应用分类的情况, 可以看到那个从大公司中分离出来的公司, ST, Infineon, Freescale, NXP, Toshiba基本都排不上号, 到时候有一些规模更小的公司的占据了大部分市场. Analog有很强的模拟实力, 电源产品却排不上号, 应该说是一个战略失误. 其他几个模拟公司的电源产品都占据了较大的市场份额. 从应用上来分, 通信, 计算机, 消费各占四分之一左右市场, 工业汽车等瓜分剩余的四分之一市场.

表4 世界10大模拟器件公司

(单位:亿美元)

排名

 

公司

营收

增长率

市场占有率

2004

2003

 

 

 

 

1

1

TI

43.5

26(%)

14(%)

2

2

ST

41.7

22

13

3

3

Infineon

28.8

27

9

4

6

Philips

21.8

56

7

5

4

AD

20.7

17

7

6

5

NS

17.3

23

6

7

7

Maxim

10.8

17

3

8

8

Frescale

9.2

19

3

9

9

东芝

9.2

20

3

10

11

Linear

8.1

33

3

其他公司

 

 

102.7

2

33

合计

 

 

313.7

17

100

                

                  

               

May 21

一个有关升压开关电源的很好的分析

Question:
Assuming ideal components, consider this boost converter:
Boost Converter

1. Draw the current waveforms at the input (I1) and output (I2) of the boost converter. Determine whether the currents are linear or exponential and explain why.

2. What is the voltage of a boost converter�s output when it is placed in shutdown mode (transistor is turned off)?


Our Answer:

1. When the boost converter's switch closes, the current through the inductor charges per the equation IL = 1/L ∫Vdt (assuming the switch resistance is small). Since the input voltage is a constant DC level, the inductor current ramps up linearly over time.

When the switch opens, the inductor voltage reverses polarity (and boosts the output voltage in the process) in an attempt to keep the inductor current constant at the moment of switching. Because the inductor's voltage polarity has reversed, the inductor current must decrease over time, based on the formula above. You might think that this current ramps down in an exponential fashion, given that it discharges through the load resistor. But actually, because the output capacitor keeps the output voltage relatively constant, the output resistance is close to zero, so the discharge current, like the charge current, is linear.

Note that because the current at the converter's input ramps up and down (instead of pulsing up and down sharply), filtering the input source is fairly easy.

The current through the diode, I2, shoots up from zero when the switch opens. It quickly reaches the level of the inductor current and follows that current down until the switch closes, at which point it falls again to zero. Filtering the output of a boost converter is more difficult than filtering its input because of these fast rising and falling edges.

See the application note: Circuit Tradeoffs Minimize Noise in Battery-Input Power Supplies.


2. Because of the DC path between the input voltage and the boost converter's output, the output voltage doesn't go to zero volts during shutdown. Instead, it hovers at a diode drop below the input voltage. Thus the circuit never goes into shutdown because current is continually drawn from the input voltage by the load. This is a problem when that input voltage is supplied by a battery.

To fix this problem, you can add a MOSFET in series with the output. It switches off when the boost converter goes into shutdown. The figure below shows one such approach.

Here the MAX810 power-on reset turns off the MOSFET when it detects the reduced output voltage that results when the boost converter goes into shutdown.

See the application note: A Smart Solid-State Fuse Cures Boost-Converter Ills.


Additional Note: Strictly speaking, the current waveforms are truly linear only if you neglect parasitic circuit resistances and assume the output capacitor is infinite. In reality, the "linear" ramps are the beginning of an exponential, but with an asymptote so far away that you don't see any curvature.

When you see a charging ramp with a slope that is not linear:
  • If the slope decreases with time, it probably means there is parasitic resistance somewhere.
  • If it increases with time, it means the inductor is running into saturation.
May 20

健康积极的生活态度

看有关地震的新闻报道时候, 讲到一位老兄的坚强的积极的生活态度. 这位老兄一只手被压断了, 隔了好几天才被救出, 当时他的断手都已经开始腐烂了. 这位老兄鼓励抬着他的人快速走, 不要考虑他的疼痛. 多么坚强啊! 这位老兄说, 手断了一只不要紧, 相信自己将来能够做一个对社会有用的人. 很佩服这位老兄的坚强的积极的生活态度! 以后不管是遇到了顺心的事情, 还是不顺的事情, 都要健康的积极的去面对和处理事情, 向这位老兄学习致敬! 向灾区人民在天灾面前表现出来的顽强精神致敬!

May 15

庆祝Space开通

昨天下午把域名申请下来的时候发现很多朋友已经有了Space了, 在这里发现了另外一个世界, 心情很激动!
 
这几天一直看有关地震的新闻, 看着一堆堆的废墟, 心里非常难受, 看到电视上一个人在废墟边上的时候情不自禁留下了眼泪. 我们中国人民团结一心, 互相帮忙, 伸出援助之手, 但愿灾区的人民能够早日走出阴影, 重建他们的家园.
April 24

Xilinx与Altera FPGA比较系列之三 时序分析(1)

FPGA时序分析实用指南

1. 基本时序分析

a) 时钟周期

时钟周期分析是最简单的一个, 也是最容易理解的一个分析, 硬件对应的基本道理是寄存器输出延迟 + 逻辑操作延时 + 连线延迟 + 建立时间 必须小于时钟周期, 上面的式子即定义了最短的时钟周期, 也即信号的最高工作频率. 在一些实际情况下, 上面的式子会有一些变化, 比如考虑时钟的抖动, 不同信号状态下传输的延迟不一样, 等. 一般情况下, 分析最坏情况即可. 一般情况下, 时钟周期都是作为全局约束添加的. 在FPGA工作当中, 只需要加一个简单的时钟周期约束即可. 在实际项目当中, 可能会遇到有多个相关时钟, 在Quartus II中, 可以设置时钟之间的相对关系, 然后只需要设置基本的时钟约束即可. 可以在 Assignments à Settings à Timing Analysis Settings à Classical timing analyzer à Individual clock中设置. 对Quartus比较熟悉的也可以通过.qsf文件设置, 具体语法可以参考原有的设置, 一般情况下, 只要稍作修改就可以了. 直接编辑.qsf文件的好处是对于添加多个类似的约束比较快. 在ISE中, 可以使用 User constraints à create timing constraints, 通过图形界面设置, 也可以直接编辑.ucf文件实现. 同样, 具体语法可以参考现成的文件.

b) 输入setup

输入数据的setup要求是初学者经常搞糊涂的一个约束. 其实Quartus和ISE里边对输入setup的定义都非常清晰, 也即, 从外部来看, 只要满足时钟和数据一定的关系, FPGA内部可以保证不会出现亚稳态现象(即采在数据的沿上). 下面这幅图给出了Tsu的定义.

建立时间定义

在Quartus中, 这个参数是Tsu, 其准确定义如下: The length of time for which data that feeds a register via its data or enable input(s) must be present at an input pin before the clock signal that clocks the register is asserted at the clock pin. 具体计算公式如下: tSU = + - . 确切的说, 这个定义应该是从外部看到的FPGA的时序要求. 比如Tsu为 0.5ns, 那么只要数据在0.5ns之前建立, 数据送入FPGA应该不会出现问题. Tsu可以是全局约束, 也可以是局部约束. 全局约束可以通过Assignments à Settings à Timing Analysis Settings à Classical timing analyzer中的Tsu来设置, 局部约束可以通过Assignment Editor来添加.

在ISE中, 叫做Offset In Before或者Pad to setup, 准确定义如下: The minimum time for input signals to be stable before they can be sampled correctly on the next active clock edge. 具体计算公式为: Slack = Requirement - (Data Path - Clock Path + uncertainty)

举个例子来说, 如果时序报告给出数值为4.468ns, 那么这意味着数据必须在时钟沿之前4.468ns建立, 换而言之, 只要外部送入数据在4.468ns之前建立, FPGA内部采用不会出问题. 具体的计算方法如同Altera. Offset in Before可以是全局约束, 也可以局部约束, 在Constraint Editor可以设置.

在实际使用过程中, 通常大部分情况下, 数据和时钟都是每个周期有效. 因此, 数据到底在哪个时钟周期被寄存器捕获其实并不重要, 关键是所有的相关数据(比如一个总线的数据[7:0])必须保证在一个时钟周期内采样. 因此, 如何避开会造成亚稳态以及如何使得相关的数据的Tsu尽量保持一致, 是解决数据输入FPGA的时序问题的关键. 比如, 假定输入FPGA的数据在时钟沿的1ns处发生变化, 那么Tsu应当避开这个1ns附近这个区域. 只要按照上述原则操作, 时序裕量都会是够的. 在一些特殊情况下, 比如有使能信号传递, 或者是数据的时钟周期必须严格对其, 或者是时钟抖动特别大, 则需要更加仔细的考虑时序约束.

c) Tco

Tco是Clock to output的延时. 道理如同Tsu, 只不过是换个角度看问题, 即作为驱动源来看待的问题. 也是从外部观察的. 下面这幅图给出了Tco的定义

Tco

在Quartus中, 这个参数是Tco, 其准确定义如下: The maximum time required to obtain a valid output at an output pin that is fed by a register after a clock signal transition on an input pin that clocks the register. 意思是相对于输入时钟管脚而言, 从寄存器输出的数据(到达pin)最长多长时间可以稳定. 具体的计算公式如下:

tCO = + + . Tco可以是局部约束, 也可以是全局约束. 具体设置方法和Tsu类似.

在ISE中, 这个参数是Offset out after或者称为Clock to Pad, 其准确定义如下: The clock-to-output, or OFFSET OUT, delay of the FPGA is the total delay encountered from the time a clock edge arrives at the input pin of the device to the time data becomes valid at the output pin of the device. 具体计算公式为Slack = Requirement – (Clock Arrival + Clock Path + Data Path + Clock Uncertainty). Offset Out After可以为全局约束或者是局部约束, 在constraint editor工具或者直接编辑UCF文件均可设置. 下面的一个报告给出了一个示例:

OFFSET = OUT 4 ns AFTER COMP "ClkIn";
Largest slack: 0.667 ns; Smallest slack: 0.667 ns; Relative Skew: 0.0 ns;
+-----------------------------------------------+-------------+-------------+
|PAD                                            |    Slack    |Relative Skew|
+-----------------------------------------------+-------------+-------------+
|DataOut<0>                                     |        0.667|        0.0 |
+-----------------------------------------------+-------------+-------------+

即要求的Tco为4ns, 实际的Tco为3.333ns, 寄存器输出的最大延迟不超过3.33ns.

在实际应用中, 还需考虑其他的一些因素, 比如时钟布线的策略, 比如星形结构, Daisy Chain结构等等. 不同的策略分析的方法有所差别, 具体的分析方法将在下篇有关FPGA芯片间通信(或着板间通信)的时序分析介绍.

April 22

Xilinx与Altera FPGA比较系列之二 DSP速度(2)

随着FPGA在信号处理领域应用越来越广泛, 其内部的DSP资源越来越受到了开发者的重视. 本文对Xilinx和Altera FPGA的固定乘法器(DSP)做一个比较深入的分析, 以对今后的设计提供参考.

首先, Xilinx和Altera的FPGA DSP功能基本相同, 两者基本上可以实现相近的功能. 比较小的差别是,Xilinx的DSP模块可以在模块内做乘累加运算, 而Altera的必须借助逻辑资源实现. 另外, 两者的速度有所区别, Xilinx V4标称最高速度为500MHz, 而Altera S2标称最高速率为450MHz. 在实际使用过程当中, 厂商的参数固然重要, 然而用户的使用对性能的影响也是非常大的. 我在Altera的S2C3上用综合工具自动识别 *, 以及调用 IP core, 发现两者的结果一致, 对于16X16的乘法器速度是367.65MHz, 对于8X8乘法器的速度是375.94MHz. Altera的IP core对流水线的支持相对较少, 只有2级. Xilinx综合工具似乎并没有那么智能, 只能把 * 识别出来, 用IP core的0级流水线替代, 而不能将乘法后跟随的一级流水线自己吸收到IP core中. 不过Xilinx的乘法器提供了18级流水线选择, 因而采用IP core例化实现的乘法器速度大大的提升. 我做的一个结果(V4-12), 采用综合工具infer出乘法器的速度是189MHz, 而采用IP core例化的方法实现的为260MHz和611MHz, 分别对应一级流水线和两级流水线结构. 

从以上实验结果以及笔者的使用经验来看, 似乎Altera的软件的智能程度稍高一些, 然而Xilinx的硬件功能更强. 在本例子当中, 通过例化IP core, 可以大大提高乘法器的速度. 如果采用Xilinx的FPGA, 在项目前期时可以采用综合工具infer, 留两级流水线待将来例化IP core使用, 这样一方面可以达到原型平台的快速开发, 用可以保证以后性能的改进和提高. 而采用altera的FPGA, 似乎软件已经解决了以上问题, 利用IP core例化的效果并不明显.

春咏

窗外玉兰花盛开

镜前细妆红颜笑

风起云涌雨点掉

花落叶出春天到

 
There are no photo albums.