一种基于最新SOC技术的简单8 LED灯序设计
Ofweek 2021-09-15

  LED技术越来越多的应用到我们的生活中,对于开发者来说,通过片上系统(SOC)平台实现LED或其他设备次序器,从而找到一种减少成本、降低设计难度的设计需求变得越来越普遍。SOC器件通过单芯片集成了完整LED子系统所需的单片机功能和各种数字外围设备。本文介绍了一种基于最新SOC技术的简单的8 LED灯序。在这个设计中最精彩的部分就是无需进行干预。不是采用传统的由单片机处理器干预的被动的数字外设,此设计完全是基于SOC数字系统的智能分布式处理功能。这使中央处理器从管理灯序电路的工作中解脱出来,节省CPU资源从而设计效率更高。

  该设计方法可以很容易的扩展到LED以外的需要用指定顺序开启或关闭的其他设备,比如不同长度、不同模式的序列定时器等等。该设计示例中还有额外的功能:

  · 7位计数器(TC)终端计数

  · 指示设备开启关闭的输出

  · 为序列器件提供的8位输出

  · 给Verilog状态机的时钟输入

  · 给8位ALU(bit-slice)处理器的总线时钟

  这篇文章中用到的是赛普拉斯半导体可编程片上系统(PSoC)的集成开发环境PSoC Creator。

  原理图设计

  设计的第一步是在创建一个Verilog符号来定义输入、输出和与之相关的位宽度(见图1)。一旦上层Verilog模型(原理图)已经建立,它就可以用来产生包含所有模块中引脚定义的Verilog源文件。这一步不需要开发功能Verilog代码。

  

  图1:Verilog 符号。

  刚才创建的Verilog符号现在可以放置到高层原理图设计。在这里,每一个输入及输出都能连接到时钟源、I / O引脚、状态和控制寄存器等等。8-LED灯序电路高层原理设计见图2。

  

  图2:高层原理设计示例。

  到现在为止,Verilog符号已经建立,放置到了高层原理设计里,并且连接到了设备的I/ O和时钟。现在可以生成Verilog代码来履行某些功能,在这个案例中可使发光二极管闪烁。为了管理序列的逻辑能力,可以在设计里引入一个简单的数据路径。

  这个数据路径包含一个8位ALU,其具备精简指令集,两个数据寄存器、两个累积器、位移和比较逻辑、一个4 deep的 8位FIFO。为了保持设计简单,只用到了两个ALU,用来将累加器设置为0,每次开启或关闭序列执行的时候累加器就递增。对于较复杂的定序设计,开发人员可以联合多个ALU形成一个16位或24位处理器。这样的处理器类似于bit-slice处理器,其在70年代和80年代早期比较流行,它可以为次序的子系统提供足够的处理能力,。

  数据路径配置工具示图如下。请注意CFGRAM(配置RAM)的前二行注释:“A0 <- 0”,这是给累加器0清零,“A0 <- A0+1”,实现在A0累加值。

  

  图3:数据路径配置工具。

  片上系统(SOC)技术以可编程的方式重新利用了bit-slice技术,用来把处理任务智能地分配到其他可编程硬件,从而减少主CPU的负荷。使用这种方法,可以研制出一种标准状态机。不同的是,通常算法功能要消耗大量的逻辑门。而在新的方式中这已无需再关注,因为这些功能在标准标准ALU即可实现,它包含由基于PLD的状态机控制的数据路径与/或逻辑。

  这个设计独立运行于主CPU。主应用程序可以通过API(可以修改执行参数)控制灯序电路,灯序电路初始化之后,就不再需要CPU。此外,这种实现方式同使用CPU方式相比,本身即可提高效率、可以使用更少的晶体管,从而更好的降低整体系统功耗,给其他特性预留出更多资源。

  本文讨论了LED灯序,同样的设计方法也可用到类似设计,可以通过功能强大的SOC集成结构来执行各种各样的需要频繁处理的任务,降低主CPU负荷。现在,工程师不断面临很多压力:提高性能、降低功耗、减少成本…拥有一种像这样的系统设计工具可以帮助工程师不断地创造奇迹,达到公众对他们的期望。 

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
热门推荐
  • 相关技术文库
  • 硬件
  • 原理图
  • 信号完整性
  • EMI
  • 工程师需了解的芯片datasheet

    注 | 文末留言有神器 本文主要介绍芯片datasheet的查找、使用方法以及重要性,不管是设计硬件电路还是编程,datasheet都是重要的资料, 芯片的使用方法都在datasheet里,这也是最权威的资料! Datasheet(数据手册)的快速阅读能力是每个工程师都应该具备的基本

    05-11
  • 三级管的无刷电机滤波应用

    如图1是无刷电机霍尔信号的滤波电路,为了保证波形质量,简单的阻容滤波并不能完全解决实际复杂的工作环境所带来的波形异常,量产的无刷驱动模块也有该电路。 为了保证滤波质量,在RC滤波后面加一个NPN三极管,利用三极管自身的响应速度达到高质量滤波目的。

    05-11
  • 为什么烧毁的总是相同的电容?

    我曾在一家光通信公司担任设计工程师,该公司生产的1000台设备安装在世界各地。现场的模块很多,送回公司返修的也很多,我的工作便是搞清这些模块出了什么故障。其中一次故障查找经历给我上了精彩的一课,我至今记忆犹新。 客户寄回来一个模块,其故障原因很

    05-11
  • 理解PID,探究微分、积分电路的本质

    很多朋友觉得PID是遥不可及,很神秘,很高大上的一种控制,对其控制原理也很模糊,只知晓概念性的层面,知其然不知其所以然,那么本期从另类视角来探究微分、积分电路的本质,意在帮助理解PID的控制原理(PID:P表示比例控制;I表示积分控制;D表示微分控制)

    05-10
  • 555定时器电路图汇总

    3*3*3光立方 警报器 闪光器 鸣笛警报器 闪烁电路 闪烁电路 激光射线 闩 电子骰子 LED调光器 555放大器 光检测器 机器枪 金属探测器 电机脉宽调制 LED闪光电路 音乐盒 玩具器官 警灯 另一个警灯 驱动双色LED 模型铁路时间 雨水警报 反应计时器 继电器 继电器

    05-07
  • 电解电容的计算与选择

    输入侧的电解电容计算 我们一般按照在最低输入电压下,最大输出的情况下,要求电解电容上的纹波电压低于多少个百分点来计算。当然,如果有保持时间的要求,那么需要按照保持时间的要求重新计算,二者之中,取大的值。 假如在最低输入电压下,电源的输入功率为

    05-07
  • 一个按键开关机的硬件软件设计

    要设计一个产品,只有一个按键,长按开机,再长按就关机(关机电路上的电源需要断开)。那么硬件需要怎么设计呢,软件又可以怎么做呢? 硬件电路设计如下。 硬件PCB设计如下。 硬件的工作原理是这样的,长按按键SW1时,MOS管Q1导通,电源VBAT+给系统供电,单片

    05-06
  • 电子硬件英文缩写术语解析

    常用控制接口 EN:Enable,使能。使芯片能够工作。要用的时候,就打开EN脚,不用的时候就关闭。有些芯片是高使能,有些是低使能,要看规格书才知道。 CS:Chip Select,片选。芯片的选择。通常用于发数据的时候选择哪个芯片接收。例如一根SPI总线可以挂载多个

    05-06
  • 二极管限幅电路的具体分析细节

    二极管最基本的工作状态是导通和截止两种,利用这一特性可以构成限幅电路。所谓限幅电路,就是指限制电路中某一点的信号幅度大小,当信号幅度大到一定程度时,不让信号的幅度再增大;当信号的幅度没有达到限制的幅度时,限幅电路不工作。具有这种功能的电路称

    05-07
  • 60%的EMI问题可以用这个来解决

    随着信号上升沿时间的减小,信号频率的提高,电子产品的EMI问题,也来越受到电子工程师的重视。高速pcb设计的成功,对EMI的贡献越来越受到重视,几乎60%的EMI问题可以通过高速PCB来控制解决。 1 高速信号走线屏蔽规则 如上图所示:在高速的PCB设计中,时钟等

    04-30
  • 几种常用的传感器数据处理

    在传感器使用中,我们常常需要对传感器数据进行各种整理,让应用获得更好的效果,以下介绍几种常用的简单处理方法: 1.加权平滑:平滑和均衡传感器数据,减小偶然数据突变的影响; 2.抽取突变:去除静态和缓慢变化的数据背景,强调瞬间变化; 3.简单移动平均线

    04-30
  • 工程师硬件面试的几个问题

    今天给大家分享一些硬件常见面试题。 问1 晶体管基本放大电路有共射、共集、共基三种接法,请简述这三种基本放大电路的特点。 共射:共射放大电路具有放大电流和电压的作用,输入电阻大小居中,输出电阻较大,频带较窄,适用于一般放大。 共集:共集放大电路

    04-29
下载排行榜
更多
广告
X
广告