🚨前言
(1)为什么成了付费专栏?
- 知识付费时代,多做一些尝试
- 免费内容非常容易被其他网站爬虫获取,付费是某种意义上的版权保护
- 付费即意味着责任,有利于提高专栏质量,驱使作者对读者、对内容更负责
(2)是什么样的内容和形式?
搞FPGA不像搞软件,写代码(HDL)的抽象层级不能放得太高。如果不对FPGA的底层结构有一个清晰的理解,在优化RTL与硬件结构、提高Coding效率和时序收敛方面则会比较困难。本专栏内容均为与FPGA底层硬件结构相关的内容,是真真正正能用起来的实战内容:
- 详细的理论分析
- 基于FPGA开发平台的仿真调试
- 评论区或私信答疑,在能力范围内都尽量解答关于专栏内文章的疑问
(3)文章更新情况与导航
目前已更新了以下内容:
📖Part1 可配置逻辑块CLB
可配置逻辑块CLB是FPGA底层最基础,同时也是最重要的设计单元。
无论是在组合逻辑设计还是时序逻辑设计,都少不了它的身影。
⚡第0篇:从底层结构开始学习FPGA(0)----FPGA的硬件架构层次(BEL Site Tile FSR SLR Device)
简介:FPGA的硬件架构层级(从底层到顶层):1、BEL;2、Site;3、Tile;4、FSR;5、SLR;6、Device。
⚡第1篇:从底层结构开始学习FPGA(1)----可配置逻辑块CLB(Configurable Logic Block)
简介:CLB的四个基本组成部分:1、查找表;2、触发器;3、多路选择器;4、进位链。
⚡第2篇:从底层结构开始学习FPGA(2)----LUT查找表
简介:查找表----组合逻辑设计的灵魂。
⚡第3篇:从底层结构开始学习FPGA(3)----存储单元之触发器、寄存器与锁存器
简介:触发器----时序逻辑设计的灵魂。触发器、寄存器与锁存器这三者究竟有何区别?
⚡第4篇:从底层结构开始学习FPGA(4)----MUX多路选择器(Multiplexer)
简介:CLB内部SLICE中的MUX与触发器配合,可以实现更大位宽的多路选择。
⚡第5篇:从底层结构开始学习FPGA(5)----移位寄存器
简介:LUT不仅仅是函数发生器,同时也可以是个移位寄存器。
⚡第6篇:从底层结构开始学习FPGA(6)----分布式RAM(DRAM,Distributed RAM)
简介:LUT不仅仅是函数发生器和移位寄存器,同时还可以是个RAM。
⚡第7篇:从底层结构开始学习FPGA(7)----进位链CARRY4
简介:进位链CARRY4----FPGA的底层加减法单元,延迟小,功能强。
📖Part2 块RAM(BRAM)
BRAM,FPGA底层重要的内嵌式存储单元,单个容量为36Kb(18Kb + 18Kb),整块FPGA中通常有数个这样的BRAM单元。
BRAM的可以用来实现RAM、ROM、FIFO等功能。
⚡第8篇:从底层结构开始学习FPGA(8)----Block RAM(BRAM,块RAM)
简介:BRAM做为FPGA底层固定的嵌入式存储资源,可以用来实现RAM、ROM、FIFO等功能。
⚡第9篇:从底层结构开始学习FPGA(9)----RAM IP核及其关键参数介绍
简介:BRAM实现RAM功能很简单,但是RAM IP核却要比你想象的复杂的多。
⚡第10篇:从底层结构开始学习FPGA(10)----RAM IP的定制与测试
简介:一起来例化一个RAM,并对它进行愉快的测试吧!
⚡第11篇:从底层结构开始学习FPGA(11)----Xilinx ROM IP的定制与测试
简介:RAM IP核会用了?更简单的ROM IP核更加不在话下。
⚡第12篇:从底层结构开始学习FPGA(12)----FIFO IP核及其关键参数介绍
简介:RAM和ROM都会用了?那FIFO又怎么能错过了。FIFO是设计人员一定要熟练掌握的!
⚡第13篇:从底层结构开始学习FPGA(13)----FIFO IP的定制与测试
简介:一起来例化一个FIFO,并对它进行愉快的测试吧!
📖Part3 时钟资源
时钟,同步设计的生命线。
⚡第14篇:从底层结构开始学习FPGA(14)----时钟结构
简介:7系列FPGA时钟结构相当灵活和复杂,功能同样强大。
⚡第15篇:从底层结构开始学习FPGA(14)----时钟结构(通俗版)
简介:如何用通俗的语言说清楚FPGA的时钟结构?
⚡第16篇:从底层结构开始学习FPGA(16)----MMCM与PLL
简介:MMCM与PLL----FPGA底层的时钟管理单元,最大的作用就是提供更优质的时钟信号。
⚡第17篇:从底层结构开始学习FPGA(17)----PLL/MMCM IP的定制与测试
简介:一起来例化一个PLL,并对它进行愉快的测试吧!
📖Part4 GT高速串行收发器
GT高速串行收发器是FPGA能实现高速接口的硬件基础,像Aurora,SRIO,万兆以太网、PCIE等高速接口都离不开GT高速串行收发器作为物理层的支持。只有掌握了GT高速串行收发器的硬件结构,面对上层的高速接口才能应付自如。
⚡第18篇:从底层结构开始学习FPGA(18)----GTX高速串行收发器到底是什么?
简介:GTX?GTP?这些都是什么?到底怎么用?
⚡第19篇:从底层结构开始学习FPGA(19)----GTX的时钟架构
简介:时钟和复位,弄清楚一个IP核最重要的两点。GTX的时钟架构比较复杂,需要好好捋一捋。
⚡第20篇:从底层结构开始学习FPGA(20)----TX/RX接口的数据位宽和时钟设计
简介:TX/RX接口的数据位宽和线速率还有时钟是什么关系?
⚡第21篇:从底层结构开始学习FPGA(21)----详解8B10B编解码
简介:高速串行信号采用交流耦合的方式传输,若长时间出现连续的 1/0 则容易使信号失真,8B/10B编码使得信号直流平衡,可以解决这一问题。
📖Part5 Select IO篇
FPGA的IO接口相当强大,可以实现各种各样的电平形式,速率也可以跑得很高。
⚡第n篇:从底层结构开始学习FPGA----原语IBUFDS、OBUFDS和IOBUFDS的介绍及使用(仿真/源码)
简介:原语IBUFDS、OBUFDS和IOBUFDS都是FPGA输入缓冲接口,可以分别实现单端/差分输入的缓冲,实现特定电平接口,增强电气性能。
⚡第n篇:从底层结构开始学习FPGA----原语IDDR的介绍及使用(仿真/源码)
简介:IDDR是Xilinx7系列FPGA的一个底层原语,它的功能就是把输入的双沿信号转换为单沿信号输出给FPGA内部逻辑进行使用,即完成输入的DDR信号到输出的SDR信号的转换。
⚡第n篇:从底层结构开始学习FPGA----ODDR原语的介绍及使用(仿真/源码)
简介:ODDR也是Xilinx7系列FPGA的一个底层原语,它的功能就是把FPAG内部的单沿信号转换为双沿信号输出给外部设备进行使用,即完成输入的SDR信号到输出的DDR信号的转换。
⚡第n篇:从底层结构开始学习FPGA----IDELAYE2原语的介绍及使用(仿真/源码)
简介:IDELAYE2是FPGA的一个底层原语,它的功能主要是给输入的信号添加延迟。那为什么要给输入信号添加延迟呢?假如输入的数据分别为信号和时钟,由于这两个信号传输的频率可能都特别快,再加上它们的走线存在差别,所以它们进入FPGA时可能存在相位上的差别。
⚡第n篇:从底层结构开始学习FPGA----ODELAYE2原语的介绍及使用(仿真/源码)
简介:ODELAYE2和IDELAYE2非常类似,IDELAYE2是将输入到FPGA管脚的信号延迟一段时间,而ODELAYE2则是将要从FPGA管脚输出到外部电路的信号延迟一段时间。
⚡第n篇:从底层结构开始学习FPGA----OSERDESE2原语的介绍及使用(仿真/源码)
简介:Xlinx的底层原语OSERDESE2是一种专用的并串转换器,可以将内部逻辑的并行输入转化成高速的串行输出。
📖Part6 番外篇
一些综合性的文章
⚡第n篇:从底层结构开始学习FPGA----Xilinx 7 系列FPGA 的存储资源优势
简介:7系列FPGA的存储资源在设计时将发挥何种优势?
⚡第n+1篇:从底层结构开始学习FPGA----Xilinx 7 系列 FPGA 的逻辑优势
简介:7系列FPGA的底层逻辑单元在设计时将发挥何种优势?
📖Part7 跨时钟域设计篇
教你如何科学地实现跨时钟域设计
FPGA设计之跨时钟域(CDC)设计篇(1)----亚稳态到底是什么?
FPGA设计之跨时钟域(CDC)设计篇(2)----如何科学地设计复位信号?
FPGA设计之跨时钟域(CDC)设计篇(3)----单bit信号的跨时钟域(CDC)处理方法(手撕代码)
FPGA设计之跨时钟域(CDC)设计篇(4)----多bit信号的跨时钟域(CDC)处理方法(手撕代码)
FPGA设计之跨时钟域(CDC)设计篇(5)----同步FIFO的两种设计方法(计数器法/高位扩展法 | 手撕代码)
📖Part 其他
其他的FPGA底层单元仍有许多······
⚡第n章:从底层结构开始学习FPGA----IOB
⚡第n章:从底层结构开始学习FPGA----DSP48
⚡第n章:从底层结构开始学习FPGA----XADC
⚡第n章:从底层结构开始学习FPGA----GTx
💎最后
- 📣博客主页:wuzhikai.blog.youkuaiyun.com
- 📣本文由 孤独的单刀 原创,首发于优快云平台🐵
- 📣文章还会持续更新,您有任何问题,都可以在评论区和我交流📞!
- 📣创作不易,您的支持是我持续更新的最大动力!如果本文对您有帮助,还请多多点赞👍、评论💬和收藏⭐!