找回密码
 立即注册
楼主: LAOXU

MDU32C 定型流片了吗?

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-1-26 14:47:10 | 显示全部楼层
我一直认为 , 老姚的 外挂32库, 扩展 51系列, 准备搞的像 STC32一样, 有 2个系列, 分别加 1~2个模块( MDU32 和 FPMU) , 人为限制 MDU32C 的功能.

假如没这个打算, 那只能是 贵司的设计人员, 对 C51的汇编级实现(编译)原理 理解不深刻, 只考虑 整数运算, 没考虑小数(浮点数)运算的特殊性.

仔细想想也是, 我也 60岁退休了, 比我小的 , 汇编用的少(主要用 C), 汇编理解和经验不足, 比我大的 , 出来网上混的也少(除非特别喜欢这方面).

现在开发都流行 硬件+C , 比汇编 更容易维护, 开发速度快, 更节省人工, 因此, 中国汇编级人才断挡. 高手难寻.

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-1-26 14:54:50 | 显示全部楼层
神*** 发表于 2024-1-26 14:20
要放到 【R0/R1/R2/R3】, 但 KEIL C51 经常会优化这优化那,可能会冲突;
只能再增加条指令 放【R0/R1/R2/R ...

除法指令 不是 余数 放在 R0/R1/R2/R3

KEIL C51 优化不到这 一块  

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-1-26 15:06:03 | 显示全部楼层
在乘除运算中,

1. 乘法 N位 * N位 = 2N位 ,  除法 2N位 / N位 = 2N位 (余数 N位)  最实用.

2. 除法 N位 / N位 = N位 (余数 N位)  免强能用(应用范围小).

3. 乘法 N位 * N位 = N位 最不实用 (除非增加多条乘法指令, 比如 AVR,  有 整数, 小数, 有符号数, 无符号数 各种乘法指令),
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:54
  • 最近打卡:2025-05-01 09:07:55

717

主题

1万

回帖

1万

积分

管理员

积分
15613
发表于 2024-1-26 15:14:28 | 显示全部楼层
老许,x86 都没退休,x51刚到夏天,你退那么早干嘛
x86, x51都是大哥,RISC/ARM/RISC-V 都是 弟弟,
弟弟们在发展,哥哥们也在进步 !
32位51论坛也才满了周岁,必定一路长虹 !

不懂汇编肯定不能算 MCU 专家

点评

汇编经验靠积累, 开发的少用的少, 再聪明能力再强也没用, 工作年限没到成不了 汇编资深专家. 深圳找资深 C专家, 一抓一大把, 想找 真正的 资深 汇编专家, 肯定难.  详情 回复 发表于 2024-1-26 15:28
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-1-26 15:28:08 | 显示全部楼层
神*** 发表于 2024-1-26 15:14
老许,x86 都没退休,x51刚到夏天,你退那么早干嘛
x86, x51都是大哥,RISC/ARM/RISC-V 都是 弟弟,
32位51 ...

汇编经验靠积累, 开发的少用的少, 再聪明能力再强也没用, 工作年限没到成不了 汇编资深专家.

深圳找资深 C专家, 一抓一大把, 想找 真正的 资深 汇编专家, 肯定难.
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:54
  • 最近打卡:2025-05-01 09:07:55

717

主题

1万

回帖

1万

积分

管理员

积分
15613
发表于 2024-5-2 18:27:19 | 显示全部楼层
MDU32C
STC8H2K32U-45I-LQFP32 已微信小商城上架销售

本坛网友,全部【免费+包邮 送】
深圳国芯人工智能有限公司-产品_STC8G系列 (stcai.com)

截图202405021823372114.jpg
截图202405021824029833.jpg

截图202405021824302698.jpg

截图202405021824534707.jpg

截图202405021826144403.jpg

截图202405021826445287.jpg

截图202405021827161294.jpg


回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-5-2 20:38:27 | 显示全部楼层
本帖最后由 LAOXU 于 2024-5-2 21:06 编辑

前段时间编了一下MDU32C运算库
一. 整数运算总结如下:
1. 32位整数乘除运算和移位操作效率最高.
2. 16位整数乘除运算和移位操作效率差些(用32位指令模拟操作).
3. 32位整数加减运算没用上! (C51直接内嵌数条指令执行,非子程序调用).

二. 单精度浮点数运算总结如下:
1. 浮点加/减法使用了 32位逻辑左移/右移.
2. 浮点乘法使用了 32 位乘法(模拟16位乘法操作,效率比较差).
3. 浮点除法使用了 无符号数 32 位除法.
4. 数据规格化没用上! (主要是格式和 C51浮点数格式不符,数据格式转换后效率非常差).
5. 32位整数带进/借位加减运算, 如不能做到和 实际的 CY标志位同步, 建议取消 (即做成不带进/借位加减运算).

三. 针对 MDU32C库的完善, 以下建议请考虑
1.  32 位乘法 X 32 位乘法 = 积 64位
2.  以上如不修改, 建议增加一条 32 位小数乘法
3.  数据规格化 格式 改成 R5R6R7R4 是否行? 以符合 C51浮点数规范.
4.  算术左移右移, 最末移出位, 如有可能, 请放在 Cy中, 便于级联, 四舍五入等操作.




回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-5-2 20:51:02 | 显示全部楼层
本帖最后由 LAOXU 于 2024-5-2 21:17 编辑

针对函数的可重入性, 51能使用的寄存器实在太少了, 如果要增加指令,
下列建议供参考
1. 数据互换    R4R5R6R7 <--> R0R1R2R3         
2. MDU32C 内增加一个 32位临时寄存器 DW32, 并支持下列指令.
    a. 数据互换   DW32 <--> R0R1R2R3         
    b. 数据互换   DW32 <--> R4R5R6R7
3. 32位加1    R4R5R6R7 加1
4. 32位减1    R4R5R6R7 减1

5. 32位求反    /R4R5R6R7  
6. 32位求补    -R4R5R6R7  
7. 32位比较   R4R5R6R7 - R0R1R2R3, 影响标志位

8. 32位循环左移   R4R5R6R7 (仅循环左移1位)
9. 32位循环右移   R4R5R6R7 (仅循环移1位)




回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:54
  • 最近打卡:2025-05-01 09:07:55

717

主题

1万

回帖

1万

积分

管理员

积分
15613
发表于 2024-5-2 20:53:08 | 显示全部楼层
截图202405022052504530.jpg


Ver6.94E (2024-4-29)
  1. 调整串口绘图界面上的按钮大小
  2. 增加STC8H2K32U系列
  3. 更新STC8H系列的头文件
  4. 更新Keil环境下的CDB文件
     (增加STC8H2K32U系列)
  5. 解决同时使用多个Link1D工具时出现的串口冲突问题
  6. 更新STC-USB Link1D仿真/下载器固件 (v1.15)
  7. 脱机下载板U8W固件更新为v1.50
     (工具默认工作在3.3V)
     (默认使用3.3V电压对宽压芯片进行在线和脱机下载)
  8. 增加STC8H系列MDU32C数学库STC8_MDU32C_V1.0.LIB下载
     (MDU32C数学库仅对STC8H2K32U系列可用)
     (MDU32C库支持32位乘法、无符号32位除法、有符号32位除法、
      32位逻辑左移、32位逻辑右移、32位算术右移6种运算)


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-5-2 21:28:11 | 显示全部楼层

你的太简单了, 仅仅支持 32位整数运算.


我编写了 除了 32位整数运算. 还有16位整数运算 和 单精度浮点数加减乘除法运算.
以及 浮点数 --> 整数,  整数 --> 浮点数 的转换
把 MDU32C 的功能 压榨到极致 !
捕获1.JPG

点评

牛  发表于 2024-5-17 16:22
1 喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 02:35 , Processed in 0.132537 second(s), 100 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表