作者 主题:Padauk:当8位可以寻址整个RAM时,为什么要使用16位指针? (Read 2544 times)

0位成员和6位客人正在查看此主题。

离线 面食俱乐部

  • 贡献者
  • 帖子:6
  • 国家: 日
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下问题上回复#25:2021年年1月1日,下午12:16:28»
这种处理器是如何浪费闪存的,在这里已经重复了很多次,因为架构的局限性导致程序膨胀。它们确实导致程序programs肿-但有些人似乎没有意识到"糟糕的3美分微控制器"没有任何闪光灯。这些设备是一次性可编程的。用高压编程时,内部保险丝会烧毁,您无法擦除或重新编程。

我不确定在成本方面,这种PROM与闪存相比如何,但我想是这样的'便宜得多,这就是为什么他们选择以需要更多ROM的(便宜)为代价来最小化处理器面积的原因。 Padauk确实有一些可以多次编程的设备。这些费用是原来的两倍。他们的大多数设备都是OTP。
 

离线 硅向导

  • 超级贡献者
  • ***
  • 帖子:5934
  • 国家: fr
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#26:2021年年1月1日,下午04:42:36»
这种处理器是如何浪费闪存的,在这里已经重复了很多次,因为架构的局限性导致程序膨胀。它们确实导致程序programs肿-但有些人似乎没有意识到"糟糕的3美分微控制器"没有任何闪光灯。这些设备是一次性可编程的。用高压编程时,内部保险丝会烧毁,您无法擦除或重新编程。

我不确定在成本方面,这种PROM与闪存相比如何,但我想是这样的'便宜得多,这就是为什么他们选择以需要更多ROM的(便宜)为代价来最小化处理器面积的原因。 Padauk确实有一些可以多次编程的设备。这些费用是原来的两倍。他们的大多数设备都是OTP。

感谢您指出了这一点。
我关于分离Flash芯片的观点比较笼统-正如我所说,我没有'我对Padauk MCU并不了解。但总的来说,在单独的芯片上安装Flash芯片在财务上是有意义的,因为允许嵌入Flash单元的CMOS工艺比没有该功能的CMOS工艺昂贵得多。因此,根据总面积,焊盘数等,分离模具可能会更便宜。

OTP ROM OTOH可以在标准CMOS工艺上实现,因此'在任何情况下都确实便宜。
 

离线 布鲁斯胡特

  • 超级贡献者
  • ***
  • 职位:1965
  • 国家: nz
  • 前身为SiFive,Samsung R&D
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#27:2021年年1月1日,晚上11:31:09»
这种处理器是如何浪费闪存的,在这里已经重复了很多次,因为架构的局限性导致程序膨胀。它们确实导致程序programs肿-但有些人似乎没有意识到"糟糕的3美分微控制器"没有任何闪光灯。这些设备是一次性可编程的。用高压编程时,内部保险丝会烧毁,您无法擦除或重新编程。

那'与讨论的原则无关。程序的存储成本很高,无论它采用哪种特殊格式-OTP,掩码ROM,EPROM,闪存,SRAM。程序空间的成本与CPU内核中的门的成本之比有所变化,但变化可能不大-闪存可能是最便宜的。

无论相对成本如何,在某些程序大小以上,低效程序编码的成本都比制造更好的CPU内核的成本高。那一点可能是1000条指令,10,000条指令或100,000条指令。

如果超出该范围,我会感到惊讶。

特别是当我们'再说{8080、6502、8051,PIC}与说{PDP-11,MSP430,CM0,RV32E}的低复杂度实现之间的区别

I'我一直试图了解重点在哪里's worth adding the "C"将16位操作码扩展到RISC-V内核。 16位至32位解码器需要大约400个6-LUT,可节省程序大小的25%-30%。 粗略估计,如果您将那些LUT用作程序存储器,则'相当于3 KB的RAM。要节省3 KB的程序大小,您'd需要RV32I程序的大小为10 KB至12 KB,或2500至3000条指令。

 
以下用户感谢这篇文章: 我想要一个粗鲁的用户名

离线 西风

  • 超级贡献者
  • ***
  • 帖子:3367
  • 国家: 我们
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#28:2021年年1月2日,上午01:37:53»
引用
有些人似乎没有意识到"糟糕的3美分微控制器"没有任何闪光灯。这些设备是一次性可编程的。用高压编程时,内部保险丝会烧毁
如果Padauk程序存储器不存在,我会感到惊讶"flash",根据大多数技术定义。  They'只是省略了擦除它所需的(大量)附加电路。
实际的"fuse"基于PROM内存的避风港'很久没用了'认为它甚至无法达到低端红木零件(〜6kbits)的密度。
//youtu.be/5jw5D0F008c
 

离线 西风

  • 超级贡献者
  • ***
  • 帖子:3367
  • 国家: 我们
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#29:2021年年1月2日,上午02:10:31»
引用
对于任何固定数量的方便寻址的短期变量位置,累加器机器的任何给定构造的代码都比2地址或3地址机器的代码更长,因为代码中需要相同(或更多)地址,但是需要更多的操作码。
证明。  I'd一直在想'bloat'仅作为软件问题,我的意思是"产生的代码比完成结果所需的代码大,因为该架构没有'与语言,编译器或程序员所想到的抽象相匹配。"   Like "我们必须允许递归,所以我们需要一个堆栈,因此我必须模拟一个。" 或者,一个有趣的短消息-RCA1802 CPU具有非传统的函数调用机制,这意味着几乎每个人都实现了"bloated"将其弯曲为更多传统形式的机制。
测量膨胀"每个任务所需的总位"完全是另一回事("architecture bloat?"),我需要考虑一下...


引用
我认为主要的问题是此类CPU已针对诸如块复制/比较或多精度算术之类的相当简单的任务进行了优化。
唔。 也许是8080和6502。  I'我敢肯定,PIC和可能的8051经过了优化,可以旋转引脚...
将芯片上的单个引脚设置为1:
低端PIC,Padauk:12位,无寄存器。
Cortex M0 :(通常)96位,两个寄存器。


唔。 RISC-V具有可扩展的指令集,对吗?  Is there an "IO控制器扩展" ? 我想这会允许"immediate"地址空间中一小部分的地址和值,类似于"Virtual ports" on newer AVR chips.
 

离线 布鲁斯胡特

  • 超级贡献者
  • ***
  • 职位:1965
  • 国家: nz
  • 前身为SiFive,Samsung R&D
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下方面回复#30:2021年年1月2日,上午03:14:49»
[
引用
我认为主要的问题是此类CPU已针对诸如块复制/比较或多精度算术之类的相当简单的任务进行了优化。
唔。 也许是8080和6502。  I'我敢肯定,PIC和可能的8051经过了优化,可以旋转引脚...
将芯片上的单个引脚设置为1:
低端PIC,Padauk:12位,无寄存器。
Cortex M0 :(通常)96位,两个寄存器。

假定存在内存映射的I / O(您可以自由设计内存映射和I / O硬件):

6502:ZP中某个位置的48位,绝对位置的64位,如果存在则为56位's ZP中的指针(包括LDY#0)。如果在GPIO适配器上提供SET和RESET寄存器,则40位为绝对值,等等。如果对SET和RESET位置进行位带化,则为24位。

RV32IC:如果对SET和RESET位置进行位带划分并且愿意将I / O空间的基地址保留在专用寄存器中,则最多可有16位用于32个I / O引脚。如果要加载IO区域的基地址,则需要额外的16位'格式为{-32..31} * 4096的s。


引用
唔。 RISC-V具有可扩展的指令集,对吗?  Is there an "IO控制器扩展" ? 我想这会允许"immediate"地址空间中一小部分的地址和值,类似于"Virtual ports" on newer AVR chips.

I'我不知道这样的扩展或工作组。那里's a "Code Size"工作组,负责在代码大小上匹配和击败(主要是)Thumb2,但以稍微复杂的内核为代价。

如果需要,您当然可以添加自定义SET / RESET BIT指令。您可以将I / O地址空间基地址硬连接到指令中,并使用RVC 100xxxxxxxxxxx00中的保留空间,或者如果对32位CPU没有使用32位CPU,则将操作码重用于浮点或64/128位加载/存储xx1xxxxxxxxxxx10。 FP。

如果性能不是至关重要的(通常不使用位旋转)'t(如果您有一个100+ MHz的CPU),则可以在未经修改的CPU上捕获并仿真它们。
 

离线 布鲁斯胡特

  • 超级贡献者
  • ***
  • 职位:1965
  • 国家: nz
  • 前身为SiFive,Samsung R&D
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#31:2021年年1月2日,上午03:27:02»
当然,函数调用比捕获和仿真更有效。这几乎限制了代码大小,几乎可以立即加载到一个JSR中-6502上的五个字节(最多256个GPIO,子程序在内存中的任何地方)或RV32IC上的四个字节(最多64个GPIO,子程序在+ /内) -2 KB)。

尽管在我看来,只有很小的程序才会受到代码量的实质影响,从而影响IO引脚的旋转。它'除了在绝对最小的设备上进行优化之外,优化并不是一件明智的事情。
 

离线 jklasdf

  • 定期贡献者
  • *
  • 帖子:66
  • 国家: 我们
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#32:2021年年1月11日,上午05:46:01»
引用
有些人似乎没有意识到"糟糕的3美分微控制器"没有任何闪光灯。这些设备是一次性可编程的。用高压编程时,内部保险丝会烧毁
如果Padauk程序存储器不存在,我会感到惊讶"flash",根据大多数技术定义。  They'只是省略了擦除它所需的(大量)附加电路。
实际的"fuse"基于PROM内存的避风港'很久没用了'认为它甚至无法达到低端红木零件(〜6kbits)的密度。
//youtu.be/5jw5D0F008c

I'我是否想知道您是否还有其他消息说,Padauk OTP微控制器实际上只是在闪烁而没有电路来擦除它(并且最近在LCSC上出现了很多其他亚洲OTP微控制器)?我一直觉得闪光灯(电池本身以及支持电路,如产生工作电压所需的电荷泵)都不适合现代CMOS工艺。因此,大量的闪存微控制器实际上是同一封装中的两个单独的管芯。

至少对electonupdate youtube视频/博客的评论者之一认为这些评论没有使用Flash
//www.youtube.com/watch?v=5jw5D0F008c&lc=UgzjpUvRw-gayq-YV554AaABAg.8zs_DySsHKw9-H4ln1iw53

在标准CMOS工艺中可以实现的反熔丝可以达到几兆比特(可能不一样)"fuse"基于PROM技术的您're referring to)
//news.synopsys.com/2018-01-10-Synopsys-Expands-DesignWare-IP-Portfolio-with-Acquisition-of-Kilopass-Technology
//www.synopsys.com/designware-ip/technical-bulletin/non-volatile-memory-dwtb-q418.html
 

离线 jklasdf

  • 定期贡献者
  • *
  • 帖子:66
  • 国家: 我们
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#33:2021年年1月11日,上午06:01:56»
这种处理器是如何浪费闪存的,在这里已经重复了很多次,因为架构的局限性导致程序膨胀。它们确实导致程序programs肿-但有些人似乎没有意识到"糟糕的3美分微控制器"没有任何闪光灯。这些设备是一次性可编程的。用高压编程时,内部保险丝会烧毁,您无法擦除或重新编程。

那'与讨论的原则无关。程序的存储成本很高,无论它采用哪种特殊格式-OTP,掩码ROM,EPROM,闪存,SRAM。程序空间的成本与CPU内核中的门的成本之比有所变化,但变化可能不大-闪存可能是最便宜的。

无论相对成本如何,在某些程序大小以上,低效程序编码的成本都比制造更好的CPU内核的成本高。那一点可能是1000条指令,10,000条指令或100,000条指令。

如果超出该范围,我会感到惊讶。

特别是当我们'再说{8080、6502、8051,PIC}与说{PDP-11,MSP430,CM0,RV32E}的低复杂度实现之间的区别

I'我一直试图了解重点在哪里's worth adding the "C"将16位操作码扩展到RISC-V内核。 16位至32位解码器需要大约400个6-LUT,可节省程序大小的25%-30%。 粗略估计,如果您将那些LUT用作程序存储器,则'相当于3 KB的RAM。要节省3 KB的程序大小,您'd需要RV32I程序的大小为10 KB至12 KB,或2500至3000条指令。

很多帕达克'公司成立时的最初工作是使用多核处理器阵列: //jaycarlson.net/2019/09/06/whats-up-with-these-3-cent-microcontrollers/

它们内核的低复杂性可能是这项工作的结果,而不是试图优化其当前微控制器的总芯片尺寸。
 

离线 布森

  • 支持者
  • ****
  • 职位:1835
  • 国家: 我们
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#34:2021年年1月12日,晚上11:02:06»
在标准CMOS工艺中可以实现的反熔丝可以达到几兆比特(可能不一样)"fuse"基于PROM技术的您're referring to)
兆位?  If so it'可能很慢。  I'一直被认为反融合是有问题的,因为它们没有'不允许有选择地驱动行,或者更具体地说,当您驱动一行时,最终会通过二极管连接来驱动每一行。 宽的行将导致更多的交叉二极管连接。 所有这些相互连接的行的结果是,您将获得非常高的电容,从而导致访问时间随阵列大小而增加。 但是对于4k的4k OTP内存来说可能会很好。  :-//
 

离线 jklasdf

  • 定期贡献者
  • *
  • 帖子:66
  • 国家: 我们
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#35:2021年年1月13日,下午09:25:39»
在标准CMOS工艺中可以实现的反熔丝可以达到几兆比特(可能不一样)"fuse"基于PROM技术的您're referring to)
兆位?  If so it'可能很慢。  I'一直被认为反融合是有问题的,因为它们没有'不允许有选择地驱动行,或者更具体地说,当您驱动一行时,最终会通过二极管连接来驱动每一行。 宽的行将导致更多的交叉二极管连接。 所有这些相互连接的行的结果是,您将获得非常高的电容,从而导致访问时间随阵列大小而增加。 但是对于4k的4k OTP内存来说可能会很好。  :-//

那么反熔丝会阻止它们排列成行以进行读出吗?有些反熔丝技术确实确实使用了二极管,但我没有'认为这从根本上阻止了您进行可独立处理和读取行的设计。也许这只是您正在使用的任何具体实现,而实际上一切都只是一个巨大的"row"?

让'例如,您在一个IC上有一个反熔丝阵列,并且您想在完全独立的同一IC上添加另一个。您是说完全不可能添加另一个完全独立的反熔丝阵列吗?只是在同一死?对于具有反熔丝的IC,是否可以某种方式链接晶片中所有IC上的反熔丝(可以'除非您全部读出,否则请读出一个),直到他们're diced?

我认为类似于RAM阵列(我通常会考虑寻址和读取行),在其中可以有x4,x8,x16等行,理论上可以有非常宽的行(甚至不行)"wide"如果总内存很小),但是'也没有什么可以阻止您将事物组织成较小的"rows"出于实际原因进行读出。
 

离线 西风

  • 超级贡献者
  • ***
  • 帖子:3367
  • 国家: 我们
回复:帕达克:为什么当8位可以寻址整个RAM时为什么使用16位指针?
« 在以下回复#36:2021年年1月14日,上午01:58:11»
引用
I'我很好奇,如果您还有其他来源认为Padauk OTP微控制器实际上只是在闪烁而没有电路来擦除它
不,我不't. 大概是足够高的放大倍率和知识渊博的观众可以决定。
I'基于这样的假设:从未见过其他人生产出专门宣传基于反熔丝的OTP存储器的微控制器(它's common for FPGAs.)
似乎确实可行;我可以找到有关反熔丝技术优点的几篇文章,特别是:
//www.eetimes.com/anti-fuse-memory-provides-robust-secure-nvm-option/and 一些关于相对高密度反熔丝记忆的学术文章(此处'是2006年关于具有32k反熔丝存储器和16位CPU的微控制器的论文: //koasas.kaist.ac.kr/bitstream/10203/22026/1/000240077100016.pdf )(其他都是付费专区。  Sigh.)
从EETimes文章:
引用
当标准逻辑CMOS到达180纳米工艺节点时,反熔丝NVM成为现实。这是栅极氧化层击穿电压小于结击穿电压的第一个工艺节点。随着每个依次较小的工艺几何形状,栅极氧化物击穿电压随着晶体管尺寸和氧化物厚度而继续降低。因此,反熔丝技术的优点是随着每一代新工艺的进行改进:单位面积上更多的位单元,更少的写和读存储器功耗以及由于操作过程中更少的功耗而提高的可靠性。
那 article was from "kilopass",显然是一家半导体知识产权公司,此后已被Synopsys收购。
So they had some vested interest in selling their particular technology.  Perhaps high-density antifuse memory is mired in a swamp of IP issues that prevent its use in the western world (and Padauk/China happily ignores?)Here are some more recent items from Synopsis://search.synopsys.com/?q=antifuse&lang-id=en
 


分享我

掘客  Facebook  SlashDot  可口的  Technorati  推特  谷歌  雅虎
中频