LAOXU 发表于 2023-12-14 22:05:36

无符号除法:32b / 32b --> 32b (带余数 32b) 不错,被除数(24b 小数) << 8 , 再除以 除数(24b 小数) , 随后结果 规格化一下, 即可得到 单精度浮点数除法 之积.

cnos 发表于 2023-12-14 22:21:21

神农鼎 发表于 2023-12-14 11:08
你想 24V 给 MCU_VCC 供电 ?

我的意思是有几路真正的OD口,只有输出功能的。

神农鼎 发表于 2023-12-14 22:36:49

cnos 发表于 2023-12-14 22:21
我的意思是有几路真正的OD口,只有输出功能的。

开漏工作模式,能输出,也能输入,本意是你几十个芯片相连接,外部只加1个上拉

LAOXU 发表于 2023-12-15 05:24:35

其他建议 2 :

仔细想想, 这个 MDU32C , 应该是为 STC32 准备的, 只不过顺路给他装进了 51 .

因此, 还是关于乘法, 强烈建议

1. 关于乘法, 能否 组成 32b * 32b --> 64b
                   R4R5R6R7 * R0R1R2R3--> R0R1R2R3R4R5R6R7
   这样, 在 51 单精度浮点数乘法 中, 当小数乘法用, 一次计算可得积.
   在 251 扩展的 双精度浮点数 乘除法 运算, 都能有效使用, 发挥作用, 因此很有必要.

2. 关于 ARCON 操作

    记得修改 有关 中断 类的寄存器后, CPU 都要多执行一条指令, 才能响应中断,
    因些, 不知对 ARCON 装载, 算不算对 中断 类的寄存器 操作 ?
    这很重要, 希望设计核实一下, 如是, 则 后面紧跟 DMAIR 装载触发, 中间不用关中断, 完美 !
    如果不是, 是否能在 装载 的同时, 增加一个触发信号, 通知 中断控制器, 作为 中断 类的寄存器 修改(可产生CPU 要多执行一条指令, 才能响应中断效果),
    这样, 后面紧跟 DMAIR 装载 触发, 不用关中断(反正我认为, 设计的原则, 如不是必需, 不建议关中断).
   

LAOXU 发表于 2023-12-15 05:48:06

总之, 在 8位机上用 MDU32C, 在运算能力上, 已超 MP430

神农鼎 发表于 2023-12-15 09:34:38

大家沿着我们 荣誉版本 老许和杨老师 指出的 阳光大道 再发挥发挥
===忆当年和老许初入 51殿堂,现已携手为 51世界 保驾护航


杨老师给我们 51世界 指出的 MDU32D, 会是将来 【STC64位8051超算单元】的筑基之作
===要2组类似 R0 ~ R7, 16个8位寄存器 协同工作,这就是要上 STC64超算单元

神农鼎 发表于 2023-12-15 09:57:45

STC8新设计,将搭载 新的 MDU32 硬件32位乘除加减移位,请提宝贵建议
===我们只是帮您实现您心中的 51 的那双勤劳的手
大家认为这个 MDU32+ 还要增加哪些功能放到 STC8H系列中,抓紧提
===计划给 STC8H8K64U 进行全面升级到 STC8H32K64U
更正前面描述错误===2023/12/15
MDU32C, 设计是如下设计的/已设计完成,请大家帮忙审核,请 老许/杨老师 把关
Function

SFR

XFR



神农鼎 发表于 2023-12-15 10:03:43

SFR
SFRADDRFUNC76543210
DMAIREDInstruction CMD
ARCONDDConfiguration/StatusCYOVSRLSC
R000DataIn / ResultOutR0
R101DataIn / ResultOutR1
R202DataIn / ResultOutR2
R303DataIn / ResultOutR3
R404DataIn / ResultOutR4
R505DataIn / ResultOutR5
R606DataIn / ResultOutR6
R707DataIn / ResultOutR7
XFR
SFRADDRFUNC76543210


FUNCTION
功能 Cycles
32b   *32b{R4,R5, R6, R7}ç{R4, R5, R6, R7}*{R0,R1, R2, R3}Product is limited under 32-bits3
32b   /32b(unsigned){R4,R5, R6, R7}ç{R4, R5, R6, R7}/   {R0,R1, R2, R3}{R0,R1, R2, R3}ç{R4, R5, R6, R7}%{R0,R1, R2, R3}19
32b   /32bsigned{R4,R5, R6, R7}ç{R4, R5, R6, R7}/   {R0,R1, R2, R3}{R0,R1, R2, R3}ç{R4, R5, R6, R7}%{R0,R1, R2, R3}21
32b   NormalizeShift{R4, R5, R6, R7} left, until the MSB is “1”Theshifted bits count will be stored back into SC6
32b   ShiftShiftleft or Shift Right according to SRL for SC bits6
ADDC{R4,R5, R6, R7}ç{R4, R5, R6, R7}+   {R0,R1, R2, R3}+CYCYçCarry from ADDCOVçOverflow for signed operation      (   ( (R4==0) & (R0==0) ) & (SUM==1)) ||      (   ( (R4==1) & (R0==1) ) & (SUM==0))3
SUBBC{R4,R5, R6, R7}ç{R4, R5, R6, R7}-   {R0,R1, R2, R3}-CYCYç Carryfrom SUBBCOVçOverflow for signed operation      (   ( (R4==0) & (R0==0) ) & (SUM==1)) ||      (   ( (R4==1) & (R0==1) ) & (SUM==0))3

社区闲人 发表于 2023-12-15 10:35:39

51的天花板要到了。

LAOXU 发表于 2023-12-15 11:14:45

这个 MDU32C , 应该是为 STC32 准备的, 只不过顺路给他装进了 51 .

因此, 还是关于乘法, 强烈建议, 能否 组成 32b * 32b --> 64b ???
                   R4R5R6R7 * R0R1R2R3--> R0R1R2R3R4R5R6R7
   这样, 在 51 单精度浮点数乘法 中, 当小数乘法用, 一次计算可得积.
   否则, 用 MDU32C 计算单精度浮点数加减乘除法,第一名 估计是浮点除法, 浮点加减法紧跟其后, 并列 第二名, 浮点乘法拖后腿, 倒数第一 .

   在 STC32 中, 对 双精度浮点数 乘除法 运算, 都能有效发挥作用, 提升速度, 因此很有必要.
页: 1 2 3 4 5 6 7 8 [9] 10 11
查看完整版本: STC8新设计将搭载新MDU32硬件32位加减乘除移位,向64位超算进军,请建议