ZHCT910 March 2025 TPLD1201 , TPLD1202 , TPLD801
可编程逻辑器件 (Programmable Logic Device, PLD)是一种可以通过用户编程实现自定义逻辑功能的半导体器件。TI可编程逻辑器件 (TI Programmable Logic Device, TPLD)将多个数字逻辑和模拟电路集成于单个封装中,可以有效提升设计集成度。本文主要介绍了TPLD的使用方法,帮助TPLD的使用者快速上手。
逻辑电路是数字电路的核心组成部分,用于处理和操作二进制信号(0和1)。通过逻辑门可以实现基本的布尔运算,如与(AND)、或(OR)、非(NOT)、异或(XOR)等。每个逻辑门根据输入信号产生特定的输出,组合起来可以构建复杂的逻辑功能。
TPLD通过将多个数字逻辑和模拟电路集成于单个封装中,可以有效提升设计的集成度、节省PCB面积、降低BOM复杂度并适配多种应用场景。TPLD与复杂可编程逻辑器件 (Complex Programmable Logic Device, CPLD)、现场可编程门阵列 (Field Programmable Gate Arrays, FPGA)之间的区别如表1所示:
| TPLD | CPLD | FPGA | |
|---|---|---|---|
| 逻辑资源 | 少 | 中等 | 丰富 |
| 设计复杂度 | 低 | 中等 | 高 |
| 功耗 | 低 | 适中 | 高 |
目前TI的可编程逻辑产品主要为TPLD801(8 Pin),TPLD1201 (12 Pin无I2C)和TPLD1202 (12 Pin有I2C),其IO、查找表等资源对比如表2所示。
| Device Features | TPLD801 (Preview) | TPLD1201 (Active) | TPLD1202 (Preview) |
|---|---|---|---|
| Interface | - | - | SPI/12C |
| GPIO | 6 | 8 | 10 |
| Look-up tables | 10 | 10 | 18 |
| Digital flip-flops | 4 | 4 | 17 |
| 8-bit / 16-bit Counters | 4 / 0 | 4 / 0 | 10 / 0 |
| Analog comparator | - | 2 | 4 |
| Oscillators | 1 (25kHz,2MHz) | 1 (25kHz,2MHz) | 2 (2/10kHz,25MHz) |
| State Machine (8 states) | - | - | Yes |
| Watchdog | - | - | Yes |
| PWM | - | - | 4 |
| Device pins | 8 | 12/10 | 12 |
| Packages | SOTA | QFN, VSSOPA | QFN, SOTA |
本文介绍了TPLD的使用流程以及注意事项,包含6个章节:硬件环境、软件环境、电路设计、仿真测试、板上实测以及总结,帮助TPLD的使用者快速上手。
硬件环境搭建方面,需要准备1个TPLD1201-DGS评估板(含芯片)(图1 a)和1个TPLD烧录器(图1 b)。
图 1 (a) TPLD1201-DGS评估板 (b)
TPLD烧录器将烧录器与评估板如图2方式连接USB端连接电脑,打开开关SW3,PWR灯亮说明电源供电正常。
图 2 硬件环境的搭建首先下载TI的图形化编程软件InterConnect Studio (ICS) ,下载完成后默认安装即可。安装完成后打开界面如图3所示。
图 3 ICS 初始界面选择对应型号的芯片以及封装,之后选择空白设计,可以看到图4的设计界面。
图 4 ICS 设计界面数字逻辑电路中,JK触发器是一种常用的时序逻辑电路元件,属于双稳态触发器的一种。它具有两个输入信号(J和K)、一个时钟信号(CLK)以及两个输出信号(Q和Q')。JK触发器的特点是能够实现置位、复位、保持和翻转功能,因此在数字电路中应用广泛。
由于TPLD中没有JK触发器的资源,因此本例程通过TPLD的D触发器以及逻辑门资源实现JK触发器,实现的逻辑原理图如图5所示。通过原理图可以发现,实现JK触发器需要用到1个D触发器、2个与门、1个或门和1个非门。
图 5 通过D触发器以及逻辑门资源实现JK触发器由于TPLD中拥有4输入可编程逻辑门资源,可以将图5中原理图的逻辑门部分进一步简化。通过计算,可以得出D触发器输入逻辑的表达式:(J&!Q) | (!K&Q)。由于TPLD的D触发器资源没有!Q输出,需要添加一个非门作为!Q输出,最终得到的电路如图6所示。
图 6 TPLD内部资源实现JK触发器其中lut3的配置方法如下:将“Number of Inputs” 配置为“4”, “Boolean Function” 配置为“Equation”,“Equation”一栏填入“(A&D)|(!B&C)”,如图7所示。
图 7 配置lut3为四输入组合逻辑设计中将IO口配置为数字输入/输出;D触发器默认配置即可;反相器通过新增LUT,将“Boolean Function”配置为“INVA”即可实现。
首先点击CLK输入,在参数配置区将“Simulated Input”选项设置为“Square (DIGITAL)”,然后在方波的参数配置中,设置周期为“8us”,占空比“50%”,延时为“0ms”,如图8所示。
图 8 配置输入时钟仿真参数接下来点击J输入,在参数配置区将“Simulated Input”选项设置为“Digital Pattern (DIGITAL)”,用户可以按测试需求设置数字序列以测试电路的逻辑特性。本例程将“Pattern”设置为“ 010110011101”,“Time Per Bit”设置为“8us”,如图9所示。
图 9 配置输入信号仿真参数与J输入设置同理,本次例程将K输入的“Pattern”设置为“ 011011111101”,“Time Per Bit”设置为“8us”,设置方法同上。
仿真参数方面,点击 左侧“Settings - Simulation”,修改结束时间为200us,步进为1us,如图10所示。
图 10 仿真参数设置接下来,点击最左侧的仿真选项卡,可以得到如图11仿真测试波形。
图 11 JK触发器电路仿真波形通过仿真测试结果可以发现,当J、K同时输入0时,为保持状态,Q的输出不变;J为1、K为0时,Q输出置1;J为0、K为1时,Q输出置0;同时为1时,输出极性反转。符合JK触发器的真值表,电路工作正常。
首先是烧录流程。点击
右侧的“···”图标,会弹出如图12的烧录参数配置界面。
图 12 烧录参数配置界面其中,“Permanently Configure Device”为永久性烧录,TPLD为OTP (One time Programmable),只允许一次永久性烧录,因此一般调试时,不需要勾选。Power Source为芯片供电来源,若为外部电源供电需要选择“Target Board”,在烧录完成后会自动断开烧录器的供电,从而保护烧录器。本例程配置均为默认即可。
确认烧录配置后,点击“OK”按钮,选择对应的烧录串口,点击“Connect”按钮即可开始烧录程序。如图13所示。
图 13 选择烧录串口界面烧录完成后,会提示“Programming Successful”。若出现报错,请检查芯片是否妥善放置在烧录槽内,引脚顺序是否正确对应等。
最后是板上实测环节,设置信号发生器输出两路5kHz 3.3V的方波,两个方波的相位差为45°,分别连接J,K输入脚(参照图6,分别对应IN0和IO5)。CLK输入设置为25kHz,最终得到的实测波形图如图14所示。
图 14 实测波形图通过对波形图分析,当J、K同时输入0时,为保持状态,Q的输出不变;J为1、K为0时,Q输出置1;J为0、K为1时,Q输出置0;同时为1时,输出极性反转。符合JK触发器的真值表,逻辑实现完成。
TPLD通过将多个数字逻辑和模拟电路集成到单个封装中,可以有效提升设计的集成度。通过使用Interconnect Studio (ICS)可以轻松配置TPLD的内部资源,更多技术细节请参考TI官网的ICS用户指南。