LAOXU 发表于 2024-5-15 17:14:46

8H2K32U上的32位硬件加减乘除MDU32C模块函数库上线!包含浮点加减乘除法及数制转换

8H2K32U上的32位硬件加减乘除MDU32C模块,
配套实用函数库上线了!
包含浮点加减乘除法,及数制转换, 全线提速 !
STC8H2K32U首次在8位机上,
增加了专门的硬件32位加减乘除单元,MDU32C

重要说明:
STC8H2K32U 系列 A 版芯片,开始量产中,
MDU32C 模块的逻辑左移运算有问题,我打了一个补丁,请放心使用,
速度比 Keil C51自带的软件算法要快 N倍。
本函数库内部包含(优化)了 16个库函数:

使用方法:
只要在项目中加入 STC8_MDU32C_LIB.LIB ,
其他什么都不用管,该干哈就干啥,全自动傻瓜式提速。

升级版 MDU32C_V2 来了:
    STC8H_MDU32C_V2版 和 STC8H_MDU32C_V1版 区别:
    1. 全面改写单精度浮点数内部数据存储格式, 使之完全无缝匹配 STC MDU32C标准, 为核心内核 移植到 SDCC, IAR 开绿灯。
    2. 全面优化内部变量, 进一步减少指令提升运算速度。
单独 LIB 文件:


LIB源代码:



LAOXU 发表于 2024-5-15 17:17:58

STC8H_MDU32C_V1 LIB 库使用说明:
STC8H系列单片机 C51定点库 自动调用专用运算库函数,
插入使用了 STC8H系列的特色----MDU32C硬件乘除移位指令。
并且针对 STC8H系列集成了32位x32位硬件乘法器,32位/32位硬件除法器,32位硬件移位单元作了特别优化。

增加了对所有关联到的无符号、有符号int型,无符号、有符号long型 和 float型变量的算术运算,移位操作,
均作了运算速度大幅度提升,为方便使用,以外挂库形式加入,实行对C51内库自动替换,无缝嵌入,
其中最具有特色的是
单精度浮点数加/减/乘/除四则运算,
用 STC8H系列的 MDU32C硬件 乘除移位指令,
代替原Keil C51的加减法模拟除法程序,
大幅度地提升了原 51单精度浮点数加/减/乘/除 四则运算特慢的通病。


daybeen 发表于 2024-5-15 22:17:36

支持,为51加速

cnos 发表于 2024-5-16 20:58:28

这个好东西啊,充分发挥芯片性能

xiangzichen 发表于 2024-5-16 21:47:10

下载代码刚刚发现,,LAOXU是不是当年OurAVR开源PLC那个老许?
当年阿莫那个fool叉把一个好好的论坛搞得乌烟瘴气..
我的账号好多年了,都不给恢复.
好像之前也有我们STC的板块,后来也看不到了,这个zhazha和泰迪一样的秉性,怼天怼地怼空气.
哈哈,跑题了..

LAOXU 发表于 2024-5-17 14:32:30

xiangzichen 发表于 2024-5-16 21:47
下载代码刚刚发现,,LAOXU是不是当年OurAVR开源PLC那个老许?
当年阿莫那个fool叉把一个好好的论坛搞得乌烟瘴 ...

{:handshake:}

xiangzichen 发表于 2024-5-17 15:01:31

LAOXU 发表于 2024-5-17 14:32


哈哈,真的是你呢.那时候我是刚刚接触单片机的小白,转眼10几年了.{:4_269:}

LAOXU 发表于 2024-5-17 16:26:48

xiangzichen 发表于 2024-5-17 15:01
哈哈,真的是你呢.那时候我是刚刚接触单片机的小白,转眼10几年了.

时间过的真快呀~~~

你人到中年了, 我退休了

xiangzichen 发表于 2024-5-17 16:30:28

是啊,想想20来年不短,再想想弹指一挥间啊.

LAOXU 发表于 2024-5-30 06:02:18

本帖最后由 LAOXU 于 2024-5-30 06:03 编辑

更新版 STC8_MDU32C_V2.lib 库来了~~~~~


STC8H_MDU32C_V2 LIB 库使用说明:
      STC8H系列单片机 C51定点库 自动调用专用运算库函数,插入使用了 STC8H系列的特色----MDU32C硬件乘除移位指令。
    并且针对 STC8H系列集成了32位x32位硬件乘法器,32位/32位硬件除法器,32位硬件移位单元作了特别优化。
      增加了对所有关联到的无符号、有符号int型,无符号、有符号long型 和 float型变量的算术运算,移位操作,
    均作了运算速度大幅度提升,为方便使用,以外挂库形式加入,实行对C51内库自动替换,无缝嵌入。
    其中最具有特色的是使用了 STC8H系列的 MDU32C硬件 乘除移位指令,代替原Keil C51的浮点加减乘除法程序,大幅度
    地提升了浮点数运算速度,解决了原51 浮点数运算特慢的通病。
   
    STC8H_MDU32C_V2版 和 STC8H_MDU32C_V1版 区别:
    1. 全面改写单精度浮点数内部数据存储格式, 使之完全无缝匹配 STC MDU32C标准, 为核心内核 移植到 SDCC, IAR 开绿灯。
    2. 全面优化内部变量, 进一步减少指令提升运算速度。


单独 LIB 文件:


LIB源代码:



页: [1]
查看完整版本: 8H2K32U上的32位硬件加减乘除MDU32C模块函数库上线!包含浮点加减乘除法及数制转换