01 2014 档案

摘要:cordic 算法知道正弦和余弦值,求反正切,即角度。采用用不断的旋转求出对应的正弦余弦值,是一种近似求解发。旋转的角度很讲求,每次旋转的角度必须使得 正切值近似等于 1/(2^N)。旋转的目的是让Y轴趋近与0。把每次旋转的角度累加,即得到旋转的角度和即为正切值。比如Y轴旋转45度,则值减小1/2;... 阅读全文
posted @ 2014-01-28 23:05 乐富道 阅读(42504) 评论(0) 推荐(7)
摘要:本文主要分析MII/RMII/SMII,以及GMII/RGMII/SGMII接口的信号定义,及相关知识,同时本文也对RJ-45接口进行了总结,分析了在10/100模式下和1000M模式下的设计方法。MII接口提供了MAC与PHY之间、PHY与STA(Station Management)之间的互联技... 阅读全文
posted @ 2014-01-28 12:44 乐富道 阅读(81002) 评论(0) 推荐(2)
摘要:总结下常见的对串行数据采样的三种方式:1. 全采样存储方式:采用过采样,用过采样时钟,用移位寄存器移位,把每次采样值都存起来。采用高速的过采样时钟运行。然后等待触发条件,(就是找到数据的起始点条件,触发),然后从所有的记录到寄存器的采样值中,按照某种对应的关系选取。起始采样点必须做合适的触发。这样需要很长的寄存器串起来。对于数据太长,实现起来有限制。另外就是,满足触发条件就抽取一次过采样出来的寄存器值,触发条件很重要。2. 计数器作为触发方式:采用过采样,用过采样时钟,丢数据的起始点采用触发方式,数据到了,就启动计数器,这个计数器的值正好为过采样时钟的倍数;然后存数据的时候,选择计数器的某个值 阅读全文
posted @ 2014-01-26 10:30 乐富道 阅读(1369) 评论(0) 推荐(0)
摘要:http://xillybus.com/tutorials/pci-express-tlp-pcie-primer-tutorial-guide-2Data Link Layer PacketsAside from wrapping TLPs with its header (2 bytes) and adding a CRC at the end (LCRC actually, 4 bytes), the Data Link layer runs packets of its own for maintaining reliable transmission. These special p 阅读全文
posted @ 2014-01-14 16:35 乐富道 阅读(579) 评论(0) 推荐(0)
摘要:http://xillybus.com/tutorials/pci-express-tlp-pcie-primer-tutorial-guide-1Down to the TLP: How PCI express devices talk (Part I)ForewordWhile I was writing the Xillybus IP core for PCI express, I quickly found out that it’s very difficult to start off: Online resources as well as the official spec b 阅读全文
posted @ 2014-01-14 16:33 乐富道 阅读(883) 评论(0) 推荐(0)
摘要:verilog中的有符号数运算http://hi.baidu.com/lixu1113/item/d00dc095f86aed48f142159averilog中的有符号数运算有符号数的计算:若有需要关于有号数的计算,应当利用Verilog 2001所提供的signed及$signed()机制。Ex:inputsigned [7:0] a, b;outputsigned [15:0] o;assign o = a * b;orinput[7:0] a, b;output [15:0] o;wire signed [15:0] o_sgn;assisn o_sgn = $signed(a) * 阅读全文
posted @ 2014-01-05 12:28 乐富道 阅读(1840) 评论(0) 推荐(0)
摘要:Signed comparison in Verilog¶When you write this in Verilog:wire [7:0] a;wire [7:0] b;wire less;assign less = (a < b);the comparison between a and b is unsigned, that is a and b are numbers in the range 0-255. Writing this instead:wire [7:0] a;wire [7:0] b;wire less;assign less = ($signed(a) 阅读全文
posted @ 2014-01-05 12:16 乐富道 阅读(2243) 评论(0) 推荐(0)