跳到主要内容

AN-1137串行输出提示和技术

目录

工具书类

有关文件和软件,请访问:

//www.wsdof.com/雷电竞官网登录products/greenpak

下载我们的免费GreenPAK Designer软件[1]以打开.gp文件[2],并使用GreenPAK开发工具[3]在几分钟内将设计冻结到您自己的定制IC中。

雷竞技电竞平台Dialog Semiconductor提供了一个完整的应用说明库[4],其中包括设计示例以及Dialog IC内功能和模块的说明。

  1. GreenPAK Designer软件,软件下载,用户指南,对话框雷竞技电竞平台
  2. AN-1137串行输出提示和技术.gp,GreenPAK设计文件,对话框半导体雷竞技电竞平台
  3. GreenPAK开发工具,GreenPAK开发工具网页,对话框雷竞技电竞平台
  4. 绿百申请须知,GreenPAK应用说明网页,对话框雷竞技电竞平台
  5. SLG46620数据表,对话框半导体雷竞技电竞平台
  6. SLG46531数据表,对话框半导体雷竞技电竞平台

作者:孙玉涵

介绍

此应用程序说明演示了从Dialog的GreenPAK设备串行输出数据的各种方法。我们将介绍第四和第五家族的GreenPAK,但其中一些技术也适用于较老的GreenPAK IC。首先,串行数据是一种逻辑1和0的模式,用于与另一个设备(如MCU)通信,该设备将解释1和0以供自己使用。数据可以表示设备ID、序列化并行数据或任意模式。本应用说明解释了使用GreenPAK组件的六种基本串行输出技术,从简单模式生成器到更复杂的8状态机。

接下来,下载GP文件Serial_Output_Technicies_PAK4、Serial_Output_Technicies_PAK5_Horizontal和Serial_Output_Technicies_PAK5_Vertical。第一个文件包含一般技术,后两个文件包含状态机示例。

PGEN

最简单的理解是,PGEN已经被设计成一个模式生成器。CLK的每个上升沿都会移出模式中的下一位并环绕。

  • 如图9所示进行矩阵连接。
  • 使用所需的串行数据配置模式。(最多16条之二)
图1。PGEN特性
图2。SPI特性

FSM和SPI

这个例子写在另一个应用程序说明中,AN-1083. FSM计数器数据通过SPI块转换为串行数据。SLG46620V的输出引脚预设为引脚12。要启动SPI,nCSB输入需要从高到低的转换。有关详细说明,请阅读AN-1083 SPI并串转换器.

  • 如图9所示进行矩阵连接。
  • 将SPI设置为“P2S”模式
  • 将字节选择设置为[15:0]或[7:0]
  • 将PAR输入数据源设置为FSM0[7:0] FSM1[7:0]
  • 配置计数器数据具有所需的图案。

DFF链

模式存储在D触发器中,每个DFF存储一位。通过在寄存器字符串中连接DFF,数据被串行地时钟输出。DFF的数量与模式中的位数成线性比例。

  • 如图8所示进行矩阵连接。
  • 在适用的情况下,将nSET/NRET输入连接到POR。

配置初始极性和nSET/NRET数据中每个DFF的对应位。遵循图3a、3b、4a和4b。

图3a和3b。使用nSet/NRET选项设置DFFs的初始高电平和低电平
图4a和4b。为不带nSet/NRET的DFFs设置初始高电平和低电平

二进制码DFFs

我们介绍了如何通过PGEN、SPI或DFFs一次输出一个数据来创建模式。另一种方法是生成状态模式并为每个状态设置输出。这称为状态机,模式取决于状态出现的顺序。

GreenPAK ASM易于配置,但对于所有其他非ASM设备,我们可以使用二进制或格雷码来选择状态顺序。对于二进制代码,状态是{000001010011100101110111}。我们需要三个DFF,每个位一个,以及一个3位LUT来配置输出模式。

使用的DFF数与模式中的位数(2的幂)成指数比例。唯一需要注意的是状态转换之间的传播故障。这是因为转换是级别敏感的,二进制代码可以同时更改多个位。为避免出现小故障,输出应与时钟的下降沿同步,或进行滤波。

  • 如图9所示进行矩阵连接。
  • 在适用的情况下,将nSET/NRET输入连接到POR。
  • 配置初始极性高,高,Q输出极性至反向(nQ)
  • 配置出来以从000开始的二进制状态顺序显示所需模式的查找表的。。。到…111。
图5。二进制码DFFs
图6a、6b、6c。DFF特性

格雷码DFFs

与前面的示例类似,此示例使用格雷码作为状态转换顺序{000001011010 110111101100},这避免了转换故障。我们需要三组3位LUT和DFF,每一位一组,配置输出模式需要一个3位LUT。使用的DFF和LUT的数量与模式中的位数成指数比例(2的幂)。需要超过8个状态的模式在格雷码中效率很低,因为它使用了太多的电路资源。

  • 如图8所示进行矩阵连接。
  • 在适用的情况下,将nSET/NRET输入连接到POR。
  • 配置出来在3位查找表中,所需的模式按格雷码状态的顺序从000。。。到…100。
表1。格雷码顺序

格雷码

比特2

比特1

比特0

0

0

0

0

0

1.

0

1.

1.

0

1.

0

1.

1.

0

1.

1.

1.

1.

0

1.

1.

0

0

管道延迟

图7。管道延迟特性

管道延迟是一组具有三个输出的DFF。我们可以将其用作移位寄存器,并切换输入,以便循环状态{00、01、11和10}。3位移位寄存器的状态类似于{000001011111110100}。为状态机使用移位寄存器也可以避免像格雷码这样的过渡故障,但所需的位数与模式中的位数(2x)成线性比例。

  • 如图9所示进行矩阵连接。
  • 配置出来按照移位寄存器状态00…到…10的顺序,使用所需模式的2位查找表的。

GreenPAK–64位水平ASM

在接下来的两个设计中,我们将研究如何使用ASM来保持输出模式“水平”指按行存储模式,“垂直”指按列存储模式。行是状态,列是输出。水平设计滚动一行的输出,然后移动到下一行。

图8。矩阵1

在图7中,每个ASM输出通过管道延迟窗口化1个周期,如前一节中所配置。PGEN每8个时钟产生一个脉冲,用于在状态之间转换。

GreenPAK–64位垂直ASM

在“垂直”ASM中,设计滚动一列的状态,然后移动到下一列。在图9中,每个ASM输出通过格雷码DFFs窗口化8个时钟周期。DFF3每个周期产生一个脉冲,用于在状态之间转换。

图9。矩阵0
图10。GreenPAK5 ASM水平模式生成器

结论

在GreenPAK中,有许多方法可以生成串行模式。上面的基本形式提供了一个起点,每种形式都有其优缺点。虽然PGEN最简单,产生16位,但它仅在GreenPAK4和GreenPAK5中可用。FSM和SPI缓冲区是一个很好的替代方案,但仅在GreenPAK4中可用,限制为一个或两个字节的长度,并且需要额外的输入。如果模式很短,只需在环形结构中使用DFFs并设置一个初始化值。

还有一些状态机替代方案使用DFF和LUT来创建代码,以帮助您生成模式。在本应用说明中,我们介绍了使用二进制和格雷码DFF或寄存器移位管道延迟以特定顺序遍历状态。二进制和格雷码产生2^x模式位,管道延迟产生2*x模式位,其中x是使用的DFF数。格雷码和管道延迟消除了使用二进制计数DFF时可能出现的输出故障。

选择最适合可用电路资源和输出所需数据长度的表格。几乎任何块都可以存储数据,发送数据的方法不止一种,因为本应用说明仅涵盖最简单的表单。通过添加更多DFF进行操作或扩展,优化1s或0s的长期运行长度,甚至重用组件以最大化模式存储。

图11。GreenPAK5 ASM垂直图形生成器