找回密码
 立即注册
楼主: 神***

STC8新设计将搭载新MDU32硬件32位加减乘除移位,向64位超算进军,请建议

[复制链接]

该用户从未签到

553

主题

9627

回帖

1万

积分

管理员

积分
14135
 楼主| 发表于 2023-12-14 11:08:32 | 显示全部楼层

你想 24V 给 MCU_VCC 供电 ?
截图202312141107558942.jpg
回复 支持 反对 送花

使用道具 举报

  • TA的每日心情
    开心
    4 小时前
  • 签到天数: 164 天

    [LV.7]常住居民III

    34

    主题

    325

    回帖

    699

    积分

    高级会员

    积分
    699
    发表于 2023-12-14 15:20:16 | 显示全部楼层
    STC爱好者 发表于 2023-12-13 08:40
    https://www.stcaimcu.com/forum.php?mod=viewthread&tid=3184&extra=&page=1

    你好, 里面的例程代码哪里能找到?我在stc-isp-v6.92D.exe里面找不到这DMA这些例程
    纸上得到终觉浅,绝知此事要躬行。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-12-13 11:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    340

    回帖

    1683

    积分

    版主

    积分
    1683
    发表于 2023-12-14 16:26:05 | 显示全部楼层
    飞捷 发表于 2023-12-14 15:20
    你好, 里面的例程代码哪里能找到?我在stc-isp-v6.92D.exe里面找不到这DMA这些例程 ...

    STC8H8K64U-DEMO-CODE-V9.6-20231025.zip (35.33 MB, 下载次数: 4)
    QQ:2269694595     微信:18106296594
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    553

    主题

    9627

    回帖

    1万

    积分

    管理员

    积分
    14135
     楼主| 发表于 2023-12-14 19:58:20 | 显示全部楼层
    2023/12/14, 内部研发会议决定
    计划先在 STC8H2K32U-45MHz-LQFP32, QFN32, TSSOP28, TSSOP20 中先加入
    ===老许建议的MDU32C版,好像我也建议过
    ===杨老师建议的MDU32D 全面学习中,这好像是648051的序曲??? 先筑基
    MDU32C,最新为后续STC8系列设计的:
    SFR
      
    SFR
      
    ADDR
    FUNC
    7
    6
    5
    4
    3
    2
    1
    0
      
    DMAIR
      
    ED
    Instruction



    CMD[4:0]
      
    ARCON
      
    DD
    Configuration/Status
    CY
    OV
    SRL
    SC[4:0]
      
    R0
      
    00
    DataIn / ResultOut
    R0[7:0]
      
    R1
      
    01
    DataIn / ResultOut
    R1[7:0]
      
    R2
      
    02
    DataIn / ResultOut
    R2[7:0]
      
    R3
      
    03
    DataIn / ResultOut
    R3[7:0]
      
    R4
      
    04
    DataIn / ResultOut
    R4[7:0]
      
    R5
      
    05
    DataIn / ResultOut
    R5[7:0]
      
    R6
      
    06
    DataIn / ResultOut
    R6[7:0]
      
    R7
      
    07
    DataIn / ResultOut
    R7[7:0]
    XFR
      
    SFR
      
    ADDR
    FUNC
    7
    6
    5
    4
    3
    2
    1
    0
      
      










    FUNCTION
      
    功能
      

    Cycles
    CMD
      
    32b   *  32b
      
    {R4,  R5, R6, R7}  ç  {R4, R5, R6, R7}  *  {R0,  R1, R2, R3}
      
    Product is limited under 32-bits
    3
    0x02
      
    32b   /  32b(unsigned)
      
    {R4,  R5, R6, R7}  ç  {R4, R5, R6, R7}  /   {R0,  R1, R2, R3}
      
    {R4,  R5, R6, R7}  ç  {R4, R5, R6, R7}  %  {R0,  R1, R2, R3}
    19
    0x04
      
    32b   /  32bsigned
      
    {R4,  R5, R6, R7}  ç  {R4, R5, R6, R7}  /   {R0,  R1, R2, R3}
      
    {R4,  R5, R6, R7}  ç  {R4, R5, R6, R7}  %  {R0,  R1, R2, R3}
    21
    0x06
      
    32b   Normalize
      
    Shift  {R4, R5, R6, R7} left, until the MSB is “1”
      
    The  shifted bits count will be stored back into SC[5:0]
    6
    0x08
      
    32b   Shift
      
    Shift  left or Shift Right according to SRL for SC[5:0] bits
    6
    0x0A
      
    ADDC
      
    {R4,  R5, R6, R7}  ç  {R4, R5, R6, R7}  +   {R0,  R1, R2, R3}  +  CY
      
    CY  ç  Carry from ADDC
      
    OV  ç  Overflow for signed operation
      
            (   ( (R4[7]==0) & (R0[7]==0) ) & (SUM[31]==1)  ) ||
      
            (   ( (R4[7]==1) & (R0[7]==1) ) & (SUM[31]==0)  )
    3
    0x0C
      
    SUBBC
      
    {R4,  R5, R6, R7}  ç  {R4, R5, R6, R7}  -   {R0,  R1, R2, R3}  -  CY
      
    CY  ç  Carry from ADDC
      
    OV  ç  Overflow for signed operation
      
            (   ( (R4[7]==0) & (R0[7]==0) ) & (SUM[31]==1)  ) ||
      
            (   ( (R4[7]==1) & (R0[7]==1) ) & (SUM[31]==0)  )
    3
    0x0E


    老眼昏花,不知上面是不是,杨老师,老许 认可的:
    ===万里长征第一步,筑基,向 STC64位8051进军

    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    122

    回帖

    677

    积分

    高级会员

    积分
    677
    发表于 2023-12-14 20:41:52 | 显示全部楼层
    神农鼎 发表于 2023-12-14 19:58
    2023/12/14, 内部研发会议决定
    计划先在 STC8H2K32U-45MHz-LQFP32, QFN32, TSSOP28, TSSOP20 中先加入===老 ...

    这种加法和减法功能怎么样让编译器使用

    点评

    会提共 STC8-MDU32C的库  详情 回复 发表于 2023-12-14 20:56
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    553

    主题

    9627

    回帖

    1万

    积分

    管理员

    积分
    14135
     楼主| 发表于 2023-12-14 20:56:55 | 显示全部楼层
    zxcv1973 发表于 2023-12-14 20:41
    这种加法和减法功能怎么样让编译器使用
    会提供 MDU32C@STC8 的库
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    553

    主题

    9627

    回帖

    1万

    积分

    管理员

    积分
    14135
     楼主| 发表于 2023-12-14 20:58:19 | 显示全部楼层
    路虽远行则将至事虽难做则必成
    ===杨老师来信勉励
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2 小时前
  • 签到天数: 155 天

    [LV.7]常住居民III

    39

    主题

    893

    回帖

    4214

    积分

    荣誉版主

    积分
    4214
    发表于 2023-12-14 21:18:05 | 显示全部楼层
    本帖最后由 LAOXU 于 2023-12-14 21:26 编辑
    神农鼎 发表于 2023-12-9 08:17
    大家认为这个 MDU32+ 还要增加哪些功能放到 STC8H系列中,抓紧提
    ===计划给 STC8H8K64U 进行全面升级到 STC ...

    没什么大问题, 小问题有一点

    111.jpg


    1. 绿色部分 寄存器 , 必须为 R0R1R2R3  !   
       
        否则与 C51无法匹配 !

    2. 红色部分强列建议取消,  其参数可 放在 ACC 或 B 寄存器中, 好处: 函数是可重入的 , 否则, 存在两个 寄存器 DMAIR , ARCON , 无法实现原子操作, 所有函数都是不可重入的 !!!
       
        挡次下降一个级别不说, 性能指标适应性下降许多, 使用条件受到极大的限制, 不能和 现在的 C51高度吻合 ( 不能像现在的 C51正常多处调用 ), 否则极会发生数据冲突,造成计算结果错误,

        只能用现在的 MDU16工作方式(先关中断, 再运行), 而不是先进的 MDU32工作方式(与中断无关, 任何时候都可直接运行).

    3.  蓝色部分是笔误, 应为 SUBBC

    点评

    明继续吸收您的建议  发表于 2023-12-14 22:05
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2 小时前
  • 签到天数: 155 天

    [LV.7]常住居民III

    39

    主题

    893

    回帖

    4214

    积分

    荣誉版主

    积分
    4214
    发表于 2023-12-14 21:35:11 | 显示全部楼层
    关于 第 2点:

    仔细想想, 不改也没事, 因为 MDU 运行时, CPU 停止工作, 在 置位  ARCON 之前先关中断, 影响中断响应几个时钟周期.

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2 小时前
  • 签到天数: 155 天

    [LV.7]常住居民III

    39

    主题

    893

    回帖

    4214

    积分

    荣誉版主

    积分
    4214
    发表于 2023-12-14 21:50:01 | 显示全部楼层
    本帖最后由 LAOXU 于 2023-12-14 22:12 编辑

    其他建议:

    1. 关于乘法, 能否 组成 32b * 32b --> 64b (或者 48b)
                       R4R5R6R7 * R0R1R2R3  --> R0R1R2R3R4R5R6R7 (或者 R2R3R4R5R6R7) ,
         R4R5R6R7 作为 LONG, INT 类型 乘法积,   R2R3R4R5 作为 24b  * 24b 小数乘法 积(单精度浮点数乘法要用到)

         另一方案是, 直接增加一条  32b * 32b ( 或者 24b  * 24b ) 小数乘法, 供 单精度浮点数乘法 专用

         这样, 一次乘法, 再加规格化, 即可 得到单精度浮点数乘法 之积.

         否则, 用 MDU32C 计算  单精度浮点数加减乘除法,  第一名 估计是浮点除法, 浮点加减法紧跟其后, 并列 第二名, 浮点乘法拖后腿, 倒数等一  
       

    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-5-28 12:34 , Processed in 0.126872 second(s), 71 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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