soc-ram-rom 这样的架构有没有专门的名子?

2019-08-16 09:33:04 +08:00
 roshad

我发现所有的“智能”设备差不多都是这样的架构。连路由器都是这样。 可以告诉我关键词,让我学习一下相关知识吗?历史沿革之类。

1559 次点击
所在节点    问与答
16 条回复
roshad
2019-08-16 09:37:38 +08:00
1
iwtbauh
2019-08-16 10:01:41 +08:00
lz 你知道 rom 是什么吗=_=

rom = Read-Only Memory,即只读储存器。即通常情况下只能读取预编码的数据,不能修改其中的数据的储存器。
现在的智能设备,因为需要空中系统更新 /安装软件 /存储大量用户数据,并不会采用 rom 技术。

现在的智能设备往往采用闪存( flash )作为外存。

而采用 flash 又分为两类,nand 闪存和 nor 闪存。nand 闪存可能又被另外的一层包装,如 emmc 和 ufs

至于说这个架构是什么,和其他的计算机(如 PC )有什么区别吗。它们都叫“冯诺依曼结构”( Von Neumann architecture )
roshad
2019-08-16 16:12:45 +08:00
@iwtbauh 手机、路由器里用到 EEPROM 的吧?外存不是术语。冯诺依曼帮到我了。问问题的时候经常脑子里很糊,要是能把问题问清楚,通常自己就解决了。
roshad
2019-08-16 16:15:38 +08:00
不过按照 RAM ROM 这样的分法,闪存应该分到 NVM =non violate memory。
roshad
2019-08-16 16:17:18 +08:00
Non-volatile memory
roshad
2019-08-16 17:05:05 +08:00
维基说得不太清楚,在看 Computer Architecture:A Quantitative Approach,5th Edition 这本书
roshad
2019-08-16 17:31:00 +08:00
@roshad 看错了。这本书说的是微架构,小于 CPU 的架构。
roshad
2019-08-16 18:35:53 +08:00
@iwtbauh 冯诺依曼架构的是原始、基本的计算机。用在小于 CPU 的微观架构上比较合适。仔细想想,现代这些智能设备,缺 ROM 加块 ROM,缺 RAM 加块 RAM,简单做加法,也谈不上什么架构。wiki 上说这是 hardware design engineering 的范畴,不属于计算机架构。https://en.wikipedia.org/wiki/Computer_architecture#Implementation
roshad
2019-08-16 18:37:14 +08:00
这个帖子是由 https://item.mi.com/product/8645.html?selected=8645&pClass=p 这个路由器参数页面引出的
iwtbauh
2019-08-16 20:00:01 +08:00
@roshad #3

不,现在的
路由器通常采用 nor 或者 nand 闪存
手机通常采用 emmc 或者 ufs

它们都不采用 eeprom 技术

非常早期的路由器或手机可能采用了 eeprom 技术
iwtbauh
2019-08-16 20:04:41 +08:00
@roshad #4

外存是 Secondary storage 或者 External storage
iwtbauh
2019-08-16 20:09:31 +08:00
@roshad #8

仔细看,原文说的是“指令集和微架构”的设计被成为 implementation,implementation “不被视为架构设计,而是硬件设计工程”

这和冯诺依曼结构没什么关系。现在绝大部分真实的计算机都是冯诺依曼结构。此外,还有一种结构,叫哈佛结构。据我的认知,也就 WebAssembly 的运行环境类似于哈佛结构。
iwtbauh
2019-08-16 20:13:59 +08:00
@roshad #9

这个页面其实是具有误导性的。Mi Wifi 4C 中采用的是可以随机读写的 Flash 技术,并非 ROM,而他们写的是 “ ROM: 16MB Nor Flash ” 并不对。

另外,查询路由器参数,可以访问 WikiDevi,这里不会犯这种愚蠢的错误
https://wikidevi.com/wiki/List_of_Xiaomi_Wireless_Devices
dxgfalcongbit
2019-08-16 21:33:10 +08:00
如果外存速度足够快或者内存能做得很便宜并且掉电不丢数据,内存和外存就可以合并了,就看傲腾这类产品发展的怎么样了。

现在这样设计主要是出于成本考虑,理论上讲可以设计成 CPU 寄存器+一级缓存,但是高速缓存太贵,而且也没有必要。
secondwtq
2019-08-16 22:38:32 +08:00
楼主指的该不会是 Memory Hierarchy 吧 ...
不楼主说的是“智能设备”,又好像不是 ..
mxalbert1996
2019-08-16 22:55:31 +08:00
@dxgfalcongbit 外村不能成为内存的原因是延迟不确定,而内存的延迟是固定的。因为内存无法主动通知 CPU 数据准备就绪,所以 CPU 会在等待由内存参数(也就是时序)指定的周期后就立刻从内存读取数据,这是如果内存数据还没有准备就绪,读取到的就是坏数据,就会出问题。而这一点是外存无法做到的,哪怕 SSD 读取速度再快,延迟也是不可预测的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/592357

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX