- 博客(102)
- 资源 (17)
- 收藏
- 关注
原创 XFI和SFI的差异
本文通过研究XFI和SFI协议,得出如下结论:XFI和SFI理论上可以直接互连,但最好通过retimer或者repeater实现XFI和SFI的互连,本文也阐述了XFI和SFI的相同点和不同点。
2023-03-04 23:44:42 4411 12
原创 CPRI和10GBASE-KR的关系
当CPRI支持背板10G互连时,意味着:1)CPRI支持10GBASE-KR。2)CPRI的电气特性和10GBASE-KR一样,10GBASE-KR实际是指出了所用的介质(背板),也唯一地确定了CPRI的电气特性。3)CPRI借用了10GBASE-KR的分层结构,但PCS和FEC的实现上与10GBASE-KR有差异,因此CPRI实际是指CPRI协议。
2023-02-26 23:45:19 1686
原创 对SGMII接口的认识
SGMII为了便于串行化,拆分了PCS,将原来802.3z规范中MAC+PCS+PMA+PMD的形式改为了MAC+PCS ++PCS+PMA+PMD
2023-02-25 23:34:28 4938
原创 信号完整性设计规则之串扰最小化
本文内容从《信号完整性与电源完整性分析》整理而来,加入了自己的理解,形成了本文:信号完整性设计规则之串扰最小化
2023-02-19 16:58:54 1268
原创 Vivado综合设置之-no_lc
本文详细讨论了当勾选或者不勾选-no_lc时的差异,也详细介绍了using O5 and O6以及using O6 output only的具体含义。
2023-01-09 15:58:20 1499 1
原创 Vivado综合属性之SHREG_EXTRACT
本文给出了当SHREG_EXTRACT设置为yes和no时,Schematic的差异,也验证了如下结论:当为yes时,等效于SRL_STYLE设置为reg_srl_reg;当为no时,等效于SRL_STYLE设置为register。
2023-01-09 11:35:17 1537
原创 Vivado综合属性之SRL_STYLE
本文介绍综合属性SRL_STYLE取register、srl、srl_reg、reg_srl、reg_srl_reg和block中的值时,对Schematic的影响。SRL_STYLE用于指导Vivado将SRL(移位寄存器)映射为何种形式。
2023-01-09 11:04:35 1731
原创 Vivado综合属性之MAX_FANOUT
本文介绍了综合属性MAX_FANOUT对Schematic的影响,通过本文可以理解通过寄存器复制的方式可以降低扇出。
2023-01-08 21:14:16 3806 3
原创 Vivado综合设置之-gated_clock_conversion
本文验证-gated_clock_conversion设置为on或off时,给Schematic带来的差异。
2023-01-08 17:31:13 2530
原创 Zynq PL端调用PS端的时钟
本文的目的:在XCZU21DR环境下,PS给PL提供一个100MHz的时钟,PL端根据此时钟产生1S信号,点亮LED。
2023-01-07 12:47:56 5131 1
原创 Vivado综合设置之-keep_equivalent_registers
keep_equivalent_registers即保留等效寄存器,所谓等效寄存器是指共享输入端口(输入时钟端口clk和输入数据端口rst)的寄存器。勾选它时,意味着Vivado不会对等效寄存器进行优化;不勾选它时(默认情况),意味着Vivado会合并等效寄存器。
2023-01-07 12:29:38 1294
原创 Vivado综合设置之-resource_sharing
resource_sharing用于对算数运算(加法、减法和乘法)实现资源共享,以节约LUT资源,有3个值:auto、off和on,默认是auto。默认情况下,将resource_sharing设置为auto即可。本文验证-resource_sharing设置为on和off时对加减法、乘法运算的LUT资源占用的影响。
2023-01-07 12:06:37 1060
原创 对PTP 1588新的认识
对1588的研究持续了一段时间,总有不太确定的地方,现在进行个阶段性总结,也包含了个人的思考,可能还有认识不到位的地方,请这方面的专家能提点意见。图1Model of an ordinary clock,来自于IEC 61588-2009网络测量和控制系统的精密时钟同步协议标准.pdf仅介绍在SLAVE模式下PTP同步过程:分为两个阶段,时钟同步和时间同步。step 1. master每0.1S发1个SYNC包,Slave通过更新上图Time的值来调整供给自己PHY(上图下方紫框)的时钟..
2021-03-22 23:36:46 3268 1
原创 IO口推挽输出仿真
仿真使用TINA-TI实现,下图上方T1为P-FET,下图下方T2为N-FET。图1. 推挽输出高电平仿真结果上图可以看出在VF1侧3V通过2个1K电阻分压后能得到1.5V,这体现了推挽结构的强输出能力。图2. 推挽输出低电平仿真结果...
2021-03-12 21:43:41 529
原创 MATLAB仿真-抽取滤波
在ADC的硬件设计中,都需要在模拟输入端加一个低通滤波器,称为抗混叠滤波器,抗混叠滤波器用于限制最高输入频率,如果需要降低采样率,则需要在代码中实现抽取操作,在抽取前也需要抽取滤波器以限制最高频率分量,当原始信号中含有大于fs/(2D)的频率分量(采样率fs,抽取因子D),抽取后的信号会出现混叠,当使用带宽为pai/D的滤波器,可实现抗混叠。matlab的dsp.FIRDecimator函数实现了2倍抽取+滤波(截止角频率为0.4*pai),假如fs=650Hz,则fmax=325Hz,截止频率=0.4
2020-09-18 23:07:05 6266 2
原创 MATLAB仿真-在频谱上显示内插和抽取效果
目录结论2倍内插仿真2倍抽取仿真结论内插频谱压缩,抽取频谱扩展。2倍内插仿真以下是2倍内插前后的频谱图对比,可以看出:2倍内插即将原频谱2倍压缩,原40Hz处变成了20Hz,原25Hz变成了12.5Hz。测试代码如下:fs = 120; % sample frequency (Hz)t = 0:1/fs:10-1/fs; % 10 second span .
2020-09-18 22:05:50 4016
原创 高速接口SFP、GbE、SRIO、PCIE、CPRI和SGMII的参考时钟选择问题
参考时钟大小由高速接口线速率决定。SFPSFP线速率一般为4.25Gb/s、2.125Gb/s和1.0625Gb/s。在ZynQ 7000手册ug476中可以看到不同接口支持的典型参考时钟,如下图。图1CPLL Divider Settings for Common Protocols(部分)上图中给出的REFCLK仅是典型值,计算公式在ug476中可以看到,当N1、N2、D...
2020-01-27 23:03:47 16092
原创 频分复用、时分复用、码分复用和空分复用的区别
已经知道空间、频率和时间都是硬资源,而码是软资源。此文的4种复用,均涉及到这4种资源。频分复用复用的是时隙、空间和码,划分的是载波带宽(频率上区分信道),即在同一时隙、同一空间、同一个正交码的情况下,将一个载波带宽划分为相互区别的、多个不同频点的子信道,分别传送不同的信号。时分复用复用的是频率、空间和码,划分的是时间(时间上区分信道),即在同一频率、同一空间和同一正交码的情况下,按照时...
2019-08-29 21:28:38 20354
原创 Skill语言实现将一个table中的坐标point(x,y)按照x和y进行从小到大排序的函数
/*****************对table中的point进行排序,按照type值将x或者y从小到大排*******************/defun(TableSort (table type) table_len=length(table) let((sortedTable) sortedTable=makeTable("table") for(i 0 table_l...
2019-08-01 15:00:29 1658
原创 Allegro使用Skill语言实现根据两点p1,p2确定的线段判断是否与bbox构成的矩形相交的函数
/*****************判断两点p1,p2确定的线段是否与bbox构成的矩形相交的算法*******************/defun(isLineIntersectRectangle (p1 p2 bbox) x1=car(p1) y1=nth(1 p1) x2=car(p2) y2=nth(1 p2) lineHeight=y1-y2 lineWidth=x2-x...
2019-07-31 20:47:10 735 2
原创 Allegro利用Skill语言实现判断1个坐标是否在bBox构成的矩形框内的函数
/*****************获取叉乘*******************/defun(GetCross (p1 p2 p) p1x=car(p1) p1y=nth(1 p1) p2x=car(p2) p2y=nth(1 p2) px=car(p) py=nth(1 p) let((res) res=(p2x-p1x)*(py-p1y)-(px-p1x)*(p2y-p...
2019-07-31 14:03:41 1174
原创 Allegro利用Skill语言实现获取匹配组(MatchGroup)下的所有网络名功能
/******************获取匹配组下的所有网络名******************/defun(GetMatchGroupNetNames (MGName)MG=axlDBGetDesign()->matchgroupMG_len=length(MG)let((groupMembersTable)groupMembersTable=makeTable("tabl...
2019-07-28 17:55:12 1547
原创 Allegro利用Skill语言实现通过焊盘获取对应的网络名的功能
/******************获取焊盘的网络名******************/defun(GetPinsNetName (PinName)axlClearSelSet()axlSetFindFilter( ?enabled (list "noall" "pins" ) ?onButtons (list "pins"))dbid = axlSelectByName("PIN"...
2019-07-28 17:49:15 1265
原创 Skill语言的数组排序函数
defun(ArraySort (array)array_len=length(array)let((sortedarray)declare(sortedarray[8])for(i 0 array_len-1 sortedarray[i]=array[i]) for(i 0 array_len-2 for(j i+1 array_len-1 if(sortedarray[i]&g...
2019-07-27 23:07:34 1411 1
原创 Allegro利用Skill语言实现根据NET获取同网络下所有过孔的坐标信息
代码如下:defun(GetViaCoordinate (NetName)axlClearSelSet()axlSetFindFilter( ?enabled (list "nets" ) ?onButtons (list "nets"));p = axlSelectByName("NET" "DDR_B4420_MDQ0" t)p = axlSelectByName("NET" N...
2019-07-27 18:45:42 1830 3
原创 Allegro利用Skill实现BGA封装的自动扇出功能
此代码并非原创,是根据Cadence Skill论坛的一份代码修改而来,主要功能是:用户自己指定位号(需要BGA封装)和过孔,实现该位号的自动扇出功能(自动打孔+自动将过孔和焊盘连接),代码如下:procedure(bga_fanout(RefDes) logFile = "./bga_fanout_debug.log" ;LogFile Used f...
2019-07-27 17:36:55 2043
python实现的dbm和w转换小工具
2023-03-21
交换芯片原理图(.DSN)+对应的PCB封装和焊盘库,可以拿来练习Allegro布线
2018-11-10
python读写mdb、读excel的ui界面的源代码和exe文件
2018-10-09
LTC4303库文件和仿真工程文件
2018-09-30
smartprinter(虚拟打印机)4.1破解版
2017-03-10
《嵌入式Linux应用开发完全手册》韦东山光盘资料
2017-03-10
AppCAD(RF计算软件)
2017-03-10
u-boot-1.1.6.tar.bz2
2017-03-10
ALIENTEK MiniSTM32开发板扩展例程
2014-05-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人