侵权投诉

芯片开发语言为什么要用Chisel和Verilog

FPGA技术江湖 2021-09-26 11:00 次阅读

在最近召开的RISC-V中国峰会上,中科院计算所的包云岗研究员团队正式发布了名为“香山”的开源高性能处RISC-V处理器。前不久我有幸和包老师就这个事情做了一次深度的交流,我们聊了关于RISC-V、还有“香山”处理器的前世今生。包老师也分享了很多他关于开源硬件、新型开发语言、硬件敏捷设计、还有处理器基础架构等等这些问题的想法和学术思考,我深受启发。

包云岗是中科院计算技术研究所研究员、副所长,先进计算机系统研究中心主任,中国科学院大学特聘教授,中国开放指令生态(RISC-V)联盟秘书长。他的主要研究领域为云计算数据中心体系结构、开源处理器芯片敏捷设计等。

我把我们的对话进行了整理和采编,以飨读者。第一篇在这里,本文是第二篇,主要是包老师对硬件敏捷开发的新兴开发语言与工具的思考。

注:以下的“我”,指的都是包云岗研究员。

1. 为什么用Chisel

编者按:

在传统的数字芯片开发里,绝大多数设计者都会使用诸如Verilog、VHDL或者SystemVerilog的硬件描述语言(HDL)对电路的行为和功能进行建模。但是在香山处理器里,团队选择使用Chisel作为主要开发语言。这是基于怎样的考虑?

Chisel是基于Scala这个函数式语言来扩展出来的,我们可以把它看做是一个用来描述电路的领域专用语言,它和Verilog还是有很大区别的。

事实上,我们自己也做过两种语言的对比。在2016年,我们整个团队开始决定用RISC-V去实现标签化体系结构,也在那个时候开始接触Chisel。最早的时候我们重用了UC伯克利开发了的名叫Rocket的开源内核。这是个顺序执行的小核,我们在它上面加上了我们的标签机制,这期间其实就有很多的一些开发体会。

a69d2392-13d7-11ec-8fb8-12bb97331649.png

Rocket chip generator的系统架构图

前面提到我们的同学原来对Verilog很熟,但是用Chisel以后就会有一种爱不释手的感觉。有好多的通信,特别是年轻的同学,他们都愿意去尝试使用Chisel。有一个北大的研究生,他在做报告的时候讲,你用了Chisel以后就再也回不去了。

其实,我们自己还做过量化的评估。在2018年,我们团队里有两个本科生和一个工程师做过一个实验。这个实验是要开发一个L2 Cache,但是要集成到RISC-V的内核里。我们的工程师是用Verilog来开发的,他对Cache非常熟悉。他把OpenSPARC里面的Cache、还有Xilinx提供的Cache等等都研究过,代码都读得很透。所以他用Verilog开发,并且接到RISC-V里面去。当时他花了应该是6个星期开发,包括测试框架等等,一共写了5000多行代码。即便这样,后面还是有一些问题和Bug。

另外,我们当时有一位大四的本科生,现在也是香山的核心成员,他懂一些计算机体系结构,使用Chisel有9个月的时间。同样的任务,他用Chisel开发只花了三天时间就写出来了。把设计接到RISC-V核里面之后,还能够正常工作。之后又进一步就把DMA调通了,就能够支持像网卡这样的一些DMA的数据的传输。这个给我们留下了很深刻的印象。

我们觉得,本科生使用Chisel做的设计,哪怕是性能或者各方面差了一些,但他只用了三天时间。这样我们就可以快速去验证,并且实现我们的想法。

当然这个只是第一组实验。我们当时有一个群,在群里面吵的还是挺不可开交的,因为我们的工程师那个时候很不服气,他就觉得他的代码各方面都质量更高。所以我们后来又有另外一位中国科学院大学的大四本科生,他懂Verilog、但是没学过Chisel,所以他做的事情就是读我们工程师的Verilog代码,并把核心代码一行一行翻译成Chisel,最后要通过工程师写的测试。也就是说,翻译后的Chisel和Verilog实现的逻辑功能是完全一致的。

翻译完之后,再在同一个FPGA上面评估,看设计的PPA、 频率、功耗,还有使用的资源等等。这样下来的话,你就会看到其实出来的指标上面,大多数的指标实际都是Chisel还反而更好一些,代码量也会比他要小。

这还只是第一个阶段。后面我们的本科生又在博士生的指导下,把Chisel里面的高级特性给它加进去,结果一下子就完全超越Verilog的版本了,代码量大概只有Verilog的1/4~1/5,有些逻辑资源可以减少百分之六七十。所以那时候这组数据出来以后,工程师就他也觉得服气了。

2. Chisel vs 高层次综合

编者按:

在FPGA里高层综合是一个非常热、非常流行的一个研究方向。但是我知道Chisel和高层次综合可能并不是一回事。在Chisel官网上也明确的指出:我不是高层次综合。但在我看来,它们背后的思维方式、或者是大的方向是有共同之处的,也就是让硬件开发更加的快速、更加敏捷。也就是像您刚才说的,从想法到实现,周期更加缩短。

但是从高层综合的角度来看,虽然学术界一直在讲高层次综合已经很多年的时间,它实际的商业化可能还是需要特别突破性的进展。现在业界的这些设计,比如大的网络设计、还有数据中心加速器的这些设计,仍然是基于SystemVerilog/Verilog/VHDL这样的RTL语言。这主要是因为高层次综合有这么几个问题:

第一个就是HLS可能并不能覆盖掉的全部应用领域,也就是说它可能适合于某些应用领域,但是对于这种吞吐量比较大的、或者高速数据包处理这些应用,它可能就不那么适合。

另外一个就是它的验证。因为它相当于在RTL顶上加了一层额外的高层次语言,等它综合或者处理完了以后,还是生成底层的RTL语言,然后再走原来的FPGA的这些开发流程。所以在验证过程中,增加额外的这层可能会给验证工作造成很大的问题。所以关于这两点您怎么看?

我想其实它的通用性方面是没有问题的。Chisel本身是一个硬件描述语言,所以从它的这种完备性来看的话,它跟Verilog是一样的。也就是说,Verilog能干什么事,Chisel也能干什么事,这两个是没有什么区别的,它只不过是另外一种语法表达而已。

调试是很多人都担心的一个问题。因为Chisel它现在其实是一个源到源的翻译,是首先是基于Scala这套语法去写一个硬件的描述。然后通过FIRRTL进行翻译。再往后走的话,其实是用Verilog那套流程去做,最后生成GDSII版图。

所以在这个过程当中,其实是明显的分成两个阶段了。前面一个阶段Chisel到Verilog,第二阶段就是Verilog到GDSII版图。

我们用Chisel已经流过三颗芯片,有大的芯片、有的小的芯片,有单核的有8核的。在早期的时候,我们其实也遇到过这样的一些问题。比如你用Chisel写的代码生成了Verilog,Verilog里面有一些变量,你那边在Chisel里面改一行代码,那它这个变量就全部重新改变。后来其实仔细分析以后,我们发现这些问题都是可以有一些办法来解决的,或者说它不是阻碍可调试性的最根本的问题。所以后面我们在做香山的时候,我们在这些方面已经处理得比较好了。

就像我们有同学,他自己开发了一个工具,可以把电路波形直接转变成一个上层的高级的事件。这个时候他其实就用了Chisel和FIRRTL里面的特性。

因为FIRRTL它有点像LLVM,它可以放很多的这样自己设计的模块,FIRRTL也可以定义自己需要的功能。这个在LLVM里叫pass,在FIRTEL里叫transformer。

有了这些工具,就可以让Chisel源码和下面波形建立起联系,让调试的过程甚至比原来用Verilog还要方便。

除了这个工具,同学们还自定义和扩展了一些printf,让我们在调的时候很多时候根本不用去看波形。这些都得益于Chisel的强大和开放。

小结

在下篇文章中,我会继续分享包云岗研究员对芯片敏捷开发深刻理解,包括对工具链的优化和挑战等等。敬请期待。

本文提到的所有技术论文,包括“香山”处理器的介绍幻灯片,均已上传至知识星球“老石谈芯 – 进阶版”,请在文末扫码加入星球查看。

编辑:jq

原文标题:芯片开发语言:Verilog在左,Chisel在右

文章出处:【微信号:HXSLH1010101010,微信公众号:FPGA技术江湖】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

Virtex-6FPGA的eMMC控制器设计资料
介绍了eMMC 芯片的技术特点、工作原理,以及控制器的设计方案。该设计基于Xilinx公司的Virt....
发表于 10-15 18:00 3次 阅读
有没有熟悉FPGA/电路设计项目的接画板&答疑?
科研相关,目前电路主要是MOJO V3开发板+面包板搭起来的,需要画板优化线路,个人没有相关经验,想找一个熟悉电路设计的朋友...
发表于 10-15 11:34 119次 阅读
PCB的设计、打板和焊接
最近MicroPython在嵌入式系统领域受到大家的喜爱,攻城狮们都纷纷研究起来,就连我们Funpa....
的头像 电子森林 发表于 10-15 10:04 77次 阅读
STM32F407 DMA请求映射能在哪里使用
STM32F407 DMA1请求映射能在哪里使用? STM32F407 DMA2请求映射能在哪里使用? ...
发表于 10-15 09:27 0次 阅读
怎样去解决耳机的电流声问题
怎样去解决耳机的电流声问题? 怎样去解决archlinux开关机啪啪响的问题? ...
发表于 10-15 07:26 0次 阅读
怎样通过读取电流节点的方式去获取电流呢
怎样通过读取电流节点的方式去获取电流呢?其实验代码是怎样的?...
发表于 10-15 06:48 0次 阅读
如何对STM32F746的MAC和DMA进行配置
STM32F746库函数中初始化的步骤有哪些? 如何对STM32F746的MAC和DMA进行配置? ...
发表于 10-14 12:18 0次 阅读
FPGA 一个简单的FDCE模块vivado实现后的功能不符合预期
我自己做了一个小模块,来实现检测输入信号的上升沿的功能。VCS和vivado synthesis post timing仿真运行都符合预期,但是生成...
发表于 10-14 11:23 208次 阅读
步进电机是如何实现正反转的
步进电机是如何实现正反转的?怎样去编写其代码?...
发表于 10-14 09:49 0次 阅读
PA_IK代码该如何去实现
PA_IK代码该如何去实现? PA_VMC算法的原理是什么?...
发表于 10-14 09:00 0次 阅读
STM32L151C8T6低功耗编程代码该如何去编写
STM32L151C8T6低功耗编程代码该如何去编写?
发表于 10-14 07:41 0次 阅读
怎样去定义一个结构体数组呢
数据结构的特点有哪些? 怎样去定义一个结构体数组呢? ...
发表于 10-14 07:25 0次 阅读
基于python的用于构建仿真及测试用例的lib库cocotb
       对于从事ASIC行业及FPGA行业的小伙伴来说,仿真是一件必不可少的事情。或许有人是验....
的头像 OpenFPGA 发表于 10-13 17:01 253次 阅读
基于python的用于构建仿真及测试用例的lib库cocotb
能快速找到代码运行最慢部分的编程神器
天下武功,唯快不破。 编程也不例外,你的代码跑的快,你能快速找出代码慢的原因,你的码功就高。 今天分....
的头像 Linux爱好者 发表于 10-13 16:40 84次 阅读
Ethernity Networks发布5G路由设备新产品
UEP-60是针对网络边缘基础设施的解决方案。它专为5G网络设计,用于具有集成第1层绑定、前传网关、....
发表于 10-13 15:41 659次 阅读
Ethernity Networks发布5G路由设备新产品
动态内存分配的注意事项及本质是什么
C语言中比较重要的就是指针,它可以用来链表操作,谈到链表,很多时候为此分配内存采用动态分配而不是静态....
的头像 C语言编程学习基地 发表于 10-13 15:37 181次 阅读
动态内存分配的注意事项及本质是什么
赛灵思FPGA的用武之地
借助加速图形数据库提高患者疗效 医疗服务提供商收集的数据量正在不断增长,并正在颠覆当前的数据分析方法....
的头像 Xilinx赛灵思官微 发表于 10-13 14:39 134次 阅读
嵌入式FPGA开始在AI领域崭露头角
近期,嵌入式FPGA开始在AI领域崭露头角。所谓嵌入式FPGA (Embedded FPGA),是指....
的头像 SSDFans 发表于 10-13 10:16 273次 阅读
用Python实现3D地图教程
前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题....
的头像 马哥Linux运维 发表于 10-13 10:09 120次 阅读
用Python实现3D地图教程
Digi-Key Electronics宣布通过Digi-Key市场平台与QuickLogic Corporation建立全球合作伙伴关系
Digi-Key日前宣布与 QuickLogic® Corporation 达成全球合作伙伴关系,通....
发表于 10-13 10:06 1474次 阅读
Digi-Key Electronics宣布通过Digi-Key市场平台与QuickLogic Corporation建立全球合作伙伴关系
使用FPGA学数电不再需要安装软件了
使用FPGA学数电不再需要安装软件, 真的么? 当然是真的,听我细细道来。。。。 数字电路是一门非常....
的头像 电子森林 发表于 10-13 10:05 115次 阅读
关于Python对交通路口的红绿灯进行颜色检测
转自 |   Python联盟 1.视频读取 首先把视频读取进来,因为我测试的视频是4k的所以我用r....
的头像 新机器视觉 发表于 10-13 09:32 156次 阅读
关于Python对交通路口的红绿灯进行颜色检测
spring中声明式事务实现原理猜想
  @Transactional注解简介 @Transactional 是spring中声明式事务管....
的头像 Android编程精选 发表于 10-13 09:20 154次 阅读
xv6的文件系统是如何实现的
文件系统 本文继续来看 的文件系统部分, 将文件系统的设计分为 7 层: ,磁盘、缓存区、日志三个部....
的头像 Linux阅码场 发表于 10-12 18:00 103次 阅读
 xv6的文件系统是如何实现的
Linux中匿名页的访问分析
Linux 中 有后备文件支持的页称为文件页,如属于进程的代码段、数据段的页,内存回收的时候这些页面....
的头像 Linux阅码场 发表于 10-12 17:52 127次 阅读
处理器中异常和中断解决
异常是能够引起程序流偏离正常流程的事件,当异常发生时,正在执行的程序就会被挂起,处理器转而执行一块与....
的头像 单片机匠人 发表于 10-12 17:14 244次 阅读
RUST的真实驱动案例
我们无法确定RUST在内核的最终趋势,有多少人愿意迁移,但是至少Linus愿意试水。 Wedson ....
的头像 Linux阅码场 发表于 10-12 15:59 59次 阅读
RUST的真实驱动案例
那些有着巨大影响力的代码盘点
2009 年,Facebook 推出了一份改变世界的代码——点「赞」按钮。「赞」是包括 Leah P....
的头像 strongerHuang 发表于 10-12 15:46 154次 阅读
那些有着巨大影响力的代码盘点
那些书本上都没有提到的C语言volatile用法
许多程序员都无法正确理解C语言关键字volatile,这并不奇怪。因为大多数C语言书籍通常都是一两句....
的头像 STM32嵌入式开发 发表于 10-12 14:47 623次 阅读
那些书本上都没有提到的C语言volatile用法
童年修复系列-SNES芯片组介绍及FPGA实现
超级任天堂1990年11月21日在日本开始发售,北美于1991年8月13日发售,欧洲于1992年4月....
的头像 OpenFPGA 发表于 10-12 14:43 195次 阅读
童年修复系列-SNES芯片组介绍及FPGA实现
国产FPGA GW1NSR的片上资源和特性
   本文介绍国产FPGA GW1NSR的片上资源和特性,从官网能获取资料的途径,完成这一步可以使读....
的头像 高云半导体 发表于 10-12 14:17 663次 阅读
国产FPGA GW1NSR的片上资源和特性
什么是MicroPython 它能做什么有什么局限
随着Python成为主流的编程语言,MicroPython在嵌入式系统领域也越来越热门起来,尤其是大....
的头像 电子森林 发表于 10-12 11:44 197次 阅读
PO VO DTO转换神器的思路
当然有的人喜欢写get set,或者用BeanUtils 进行复制,代码只是工具,本文只是提供一种思....
的头像 Linux爱好者 发表于 10-12 11:13 169次 阅读
如何在Colab中使用SQL
如今,编码测试在数据科学面试过程中几乎是标准的。 作为一名数据科学招聘经理,我发现一个20-30分钟....
的头像 智能感知与物联网技术研究所 发表于 10-12 09:39 136次 阅读
如何在Colab中使用SQL
命令行工具Kubectl的别样用法
  kubectl 是 K8s 官方附带的命令行工具,可以方便的操作 K8s 集群。这篇文章主要介绍....
的头像 马哥Linux运维 发表于 10-12 09:31 98次 阅读
一本教你怎么写出让同事无法维护的代码
‍对,你没看错,本文就是教你怎么写出让同事无法维护的代码。一、程序命名 容易输入的变量名 。比如:F....
的头像 Linux爱好者 发表于 10-11 15:45 150次 阅读
优秀的 Verilog/FPGA开源项目介绍(一)
优秀的 Verilog/FPGA开源项目介绍(一)-PCIe通信 今天开始会陆续介绍一些优秀的开源项....
的头像 OpenFPGA 发表于 10-11 15:31 212次 阅读
优秀的 Verilog/FPGA开源项目介绍(一)
简述FPGA时钟约束时钟余量超差解决方法
在设计FPGA项目的时候,对时钟进行约束,但是因为算法或者硬件的原因,都使得时钟约束出现超差现象,接....
的头像 FPGA设计论坛 发表于 10-11 14:52 157次 阅读
简述FPGA时钟约束时钟余量超差解决方法
鸿蒙的网络管理功能你们知道有多厉害吗
  本示例演示了如何使用网络管理模块相关接口,演示了以下功能: 功能 1: 使用默认网络,打开连接,....
的头像 HarmonyOS技术社区 发表于 10-11 14:26 229次 阅读
鸿蒙的网络管理功能你们知道有多厉害吗
开发一个鸿蒙版仿苹果计算器教程.附代码
众所周知鸿蒙 JS 框架是非常轻量级的 MVVM 模式。通过使用和 Vue2 相似的属性劫持技术实现....
的头像 HarmonyOS技术社区 发表于 10-11 14:17 192次 阅读
开发一个鸿蒙版仿苹果计算器教程.附代码
fpga用的是什么编程语言 Verilog HDL应用最为广泛
FPGA设计不是简单的芯片研究,主要是利用 FPGA 的模式进行其他行业产品的设计。
的头像 西西 发表于 10-11 11:25 231次 阅读
fpga和单片机的区别是什么
FPGA是由存放在片内RAM中的程序来设置其工作状态的。
的头像 西西 发表于 10-11 11:07 1083次 阅读
FPGA的约束、时序分析的概念详解
A 时序约束的概念和基本策略 时序约束主要包括周期约束(FFS到FFS,即触发器到触发器)和偏移约束....
的头像 FPGA之家 发表于 10-11 10:23 269次 阅读
FPGA的约束、时序分析的概念详解
剖析verilog2005的骚操作之对数函数
小技巧分享: verilog下取对数其实可用$clog2这个系统函数,和自己找代码里面写入funct....
的头像 玩儿转FPGA 发表于 10-09 15:29 181次 阅读
剖析verilog2005的骚操作之对数函数
Floyd如何求图的最短路径
前言 在 图论 中,在寻路最短路径中除了 Dijkstra 算法以外,还有 Floyd 算法也是非常....
的头像 算法与数据结构 发表于 10-09 14:38 114次 阅读
Floyd如何求图的最短路径
Python版test1实战说明
上一篇文章已经带着大家安装 DeepStream 的 Python 开发环境,并且执行最简单的 de....
的头像 NVIDIA英伟达企业解决方案 发表于 10-09 14:28 138次 阅读
教你们如何用 Python 快速制作海报级地图附代码
 1 简介 基于 Python 中诸如 matplotlib 等功能丰富、自由度极高的绘图库,我们可....
的头像 Linux爱好者 发表于 10-09 11:36 243次 阅读
如何用10行代码轻松在ZYNQ MP上实现图像识别
本文来自赛灵思高级产品应用工程师,张超。如今各种机器学习框架的普及使得个人搭建和训练一个机器学习模型....
的头像 XILINX开发者社区 发表于 10-09 10:47 1665次 阅读
如何用10行代码轻松在ZYNQ MP上实现图像识别
国内FPGA市场谁最有机会在未来独领风骚
“话说天下大势,分久必合,合久必分。”这句话在商业市场也同样适用。在一个产业的发展过程中,随着产业的....
的头像 电子发烧友网 发表于 10-09 09:34 1498次 阅读
LMK04821芯片项目代码详解
大侠好,阿Q来也,今天是第二次和各位见面,请各位大侠多多关照。今天给各位大侠带来一篇项目开发经验分享....
的头像 FPGA技术江湖 发表于 10-08 17:51 267次 阅读
LMK04821芯片项目代码详解
如何用List组件减小JS运行内存
每种编程语言都有它的内存管理机制,不同设备上可用内存不同,分配给JS引擎可用的内存范围也不同。例如运....
的头像 HarmonyOS开发者 发表于 10-08 17:46 174次 阅读
支持jesd204b协议高速DAC芯片AD9144配置
背景 AD9144是一款支持jesd204b协议高速DAC芯片。AD9144-FMC-EBZ是基于A....
的头像 OpenFPGA 发表于 10-08 17:40 237次 阅读
如何链接两个名字一样动态库
在Linux应用的开发过程中,直接利用现成的第三方库(俗称:轮子)来完成自己的业务功能,是很常见的事....
的头像 Linux阅码场 发表于 10-08 14:58 184次 阅读
Intel FPGA系列产品详解
概述自从Altera被Intel收购后,似乎放弃了整个中国市场,Altera市场占有率被其他FPGA....
的头像 FPGA技术江湖 发表于 10-08 14:35 1759次 阅读
Intel FPGA系列产品详解
log2在verilog中到底有什么用
很多小伙伴对上一篇文章讲的取对数没感觉,觉得这个没什么用。确实很多时候用不着,verilog本身不够....
的头像 玩儿转FPGA 发表于 10-08 11:23 218次 阅读
log2在verilog中到底有什么用
如何在没有正式培训的情况下学习编程
从编程小白到完成第一款 Web 应用,我只用了 90 天,而且大多数时间都是在苦恼自己是否能成为开发....
的头像 程序人生 发表于 10-08 10:22 149次 阅读
AnDAPT推出面向Xilinx Artix和Kintex FPGA/SoC设备的电源解决方案
AnDAPT采用集成、灵活和可编程AmP电源管理IC来支持为Xilinx Kintex和Artix ....
发表于 10-08 10:21 975次 阅读
AnDAPT推出面向Xilinx Artix和Kintex FPGA/SoC设备的电源解决方案
TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor
TMP411设备是一个带有内置本地温度传感器的远程温度传感器监视器。远程温度传感器,二极管连接的晶体管通常是低成本,NPN或PNP型晶体管或二极管,是微控制器,微处理器或FPGA的组成部分。 远程精度为±1 °C适用于多个设备制造商,无需校准。双线串行接口接受SMBus写字节,读字节,发送字节和接收字节命令,以设置报警阈值和读取温度数据。 TMP411器件中包含的功能包括:串联电阻取消,可编程非理想因子,可编程分辨率,可编程阈值限制,用户定义的偏移寄存器,用于最大精度,最小和最大温度监视器,宽远程温度测量范围(高达150°C),二极管故障检测和温度警报功能。 TMP411器件采用VSSOP-8和SOIC-8封装。 特性 ±1°C远程二极管传感器 ±1°C本地温度传感器 可编程非理想因素 串联电阻取消 警报功能 系统校准的偏移寄存器 与ADT7461和ADM1032兼容的引脚和寄存器 可编程分辨率:9至12位 可编程阈值限...
发表于 09-19 16:35 343次 阅读
TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor
TMP468 具有引脚可编程的总线地址的高精度远程和本地温度传感器
TMP468器件是一款使用双线制SMBus或I 2 C兼容接口的多区域高精度低功耗温度传感器。除了本地温度外,还可以同时监控多达八个连接远程二极管的温度区域。聚合系统中的温度测量可通过缩小保护频带提升性能,并且可以降低电路板复杂程度。典型用例为监测服务器和电信设备等复杂系统中不同处理器(如MCU,GPU和FPGA)的温度。该器件将诸如串联电阻抵消,可编程非理想性因子,可编程偏移和可编程温度限值等高级特性完美结合,提供了一套精度和抗扰度更高且稳健耐用的温度监控解决方案。 八个远程通道(以及本地通道)均可独立编程,设定两个在测量位置的相应温度超出对应值时触发的阈值。此外,还可通过可编程迟滞设置避免阈值持续切换。 TMP468器件可提供高测量精度(0.75°C)和测量分辨率(0.0 625°C)。该器件还支持低电压轨(1.7V至3.6V)和通用双线制接口,采用高空间利用率的小型封装(3mm×3mm或1.6mm×1.6mm),可在计算系统中轻松集成。远程结支持-55°C至+ 150°C的温度范围。 特性 8通道远程二极管温度传感器精度:±0.75&...
发表于 09-18 16:05 251次 阅读
TMP468 具有引脚可编程的总线地址的高精度远程和本地温度传感器