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

庆贺 51 新生,STC8051H-108MHz-LQFP48/44,PDIP40,研发会议进展,2024/3/21

[复制链接]
  • TA的每日心情
    开心
    6 天前
  • 签到天数: 137 天

    [LV.7]常住居民III

    37

    主题

    872

    回帖

    3990

    积分

    荣誉版主

    积分
    3990
    发表于 2024-3-16 07:37:02 | 显示全部楼层
    重要提示:
    在 C51环境下, 一定要支持 C251 source模式指令集 !!!
    只有这样, 才能彻底提升 STC51 综合性能.


    我估算了一下, 在不提升主频情况下, RAM读写速度可提升 1.5倍, 浮点运算速度提升 2倍以上(不使用 TFPU的情况下),
    并且支持 C251的标准库函数(改写,重编译后即可), 解决原 C51的标准库函数(不可重入)的问题, 更适应 OS系统.


    尽管在 C51环境下, 表现比 C251环境下差一些, 但是, 彻底解决了标准 51的通病:
    单 DPTR, 读写速度慢, SP指针 8位, 应用范围受限, 8位指令集计算能力有限.....

    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    550

    主题

    9349

    回帖

    1万

    积分

    管理员

    积分
    13928
     楼主| 发表于 2024-3-16 07:47:28 | 显示全部楼层
    STC8051H 研发进展,2024/3/7,  研发会议
    管脚兼容天王级别的: STC89C52RC, STC12C5A60S2
    ===最后版图优化阶段,2周内流片生产
    双核心设计:
    你用 SDCC/IAR C++/KEIL C51 他就是 8位机

    ===烧录时选择 STC8051H-8Bit

    你用 KEIL C251 他就是 32位机

    ===烧录时选择 STC8051H-32Bit

    大家辛苦安装一次其实熟悉的 Keil C251 编译器
    ===他就是32位 8051

    截图202403160750575214.jpg


    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    6 天前
  • 签到天数: 137 天

    [LV.7]常住居民III

    37

    主题

    872

    回帖

    3990

    积分

    荣誉版主

    积分
    3990
    发表于 2024-3-16 07:55:10 | 显示全部楼层
    神农鼎 发表于 2024-2-25 15:19
    双核心设计:
    你用 SDCC/IAR C++/KEIL C51 他就是 8位机
    你用 KEIL C251 他就是 32位机

    在 C51 环境下, 仅开放 C251 source模式指令集 即可, 地址总线 依旧是 16位地址(不是 C251 模式下的 24位) !!!
    以便更好的嵌入 C51编译环境中, 提升整个 STC51 综合性能.
    否则, STC51 8位机 还是 8位机, 仅靠 外挂 IP核(运算模块), 提升力度有限.
    比如 RAM读写效率低速度慢 等现像, 依旧保持原样没解决.

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    6 天前
  • 签到天数: 137 天

    [LV.7]常住居民III

    37

    主题

    872

    回帖

    3990

    积分

    荣誉版主

    积分
    3990
    发表于 2024-3-16 08:09:00 | 显示全部楼层
    C51 环境下,
    用宏定义的伪 C251 source模式汇编指令集 已完成测试,
    无缝嵌入 ASM51汇编中使用,

    只等 STC8051H 正式上线, 就能移植各种 C251标准库函数,
    提升整个 STC51 8位机的综合性能.


    1 喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    昨天 09:04
  • 签到天数: 120 天

    [LV.7]常住居民III

    3

    主题

    205

    回帖

    572

    积分

    高级会员

    积分
    572
    发表于 2024-3-16 11:09:11 | 显示全部楼层
    神农鼎 发表于 2024-3-16 07:47
    STC8051H 研发进展,2024/3/7,  研发会议
    管脚兼容天王级别的: STC89C52RC, STC12C5A60S2
    ===最后版图优化 ...

    两周内流片,大概啥时候可以零售。会不会上架积分商城?

    点评

    儿童节吧  发表于 2024-3-16 11:29
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    3 小时前
  • 签到天数: 163 天

    [LV.7]常住居民III

    25

    主题

    755

    回帖

    1893

    积分

    金牌会员

    积分
    1893
    发表于 2024-3-16 17:28:59 | 显示全部楼层
    LAOXU 发表于 2024-3-16 08:09
    在 C51 环境下,
    用宏定义的伪 C251 source模式汇编指令集 已完成测试,
    可无缝嵌入 ASM51汇编中使用,

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    6 天前
  • 签到天数: 137 天

    [LV.7]常住居民III

    37

    主题

    872

    回帖

    3990

    积分

    荣誉版主

    积分
    3990
    发表于 2024-3-17 06:36:12 | 显示全部楼层
    关于 STC32  IP核 目前存在的问题:


    STC51  IP核有 3个构架, L0,L1,L2


    经测试, STC32 在小模式下(即使用 DPTR指针), 不能正常运行, 数据出错.


    经查验, 是 STC32 内部寻址全部使用 4字节 指针(即 DPTR 受 DR56最高 2字节影响).


    所有的 DPTR寻址, 实际上是完整的 DR56(4字节)寻址.




    在 C251 编译器环境下, 或许没问题(不使用 2字节指针), 但用在 C51 编译器环境下, 就有问题了(C51 仅支持2字节指针 DPTR寻址)


    依设计思路的连续性(没人指出的设计BUG, 下次设计依然存在)


    因此, 请设计核查, 在 C51编译器环境下, 要保证 P_SW2.7置1时, 所有的 DPTR寻址, 低端对片内XRAM寻址, 高端对XFR寻址(这两部分高位地址的映像要组合在一起).


    要保证 EXTRAM置1时, 所有的 DPTR寻址(只对片外XRAM寻址), 达到和 现有 STC51全兼容, 不能受控于 DR56最高 2字节.


    在 C51 编译器环境下, 仅开放 C251 source模式指令集 即可, 其他依旧, 保持不变.


    这样, 才能在 C51 编译器环境下, 有效支持 C251 source模式指令集, 整体提升 STC51 执行效率及速度, 提高 STC51 产品竞争力.


    1 喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    6 天前
  • 签到天数: 137 天

    [LV.7]常住居民III

    37

    主题

    872

    回帖

    3990

    积分

    荣誉版主

    积分
    3990
    发表于 2024-3-17 06:48:26 | 显示全部楼层
    假如不做到以上这一条, 51还是 51, 只能依靠外挂 IP核(运算模块), 提升 51性能有局限性.

    远远不及 运行 C251 source模式指令集, 带来的全方位整体提升效果.
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    6 天前
  • 签到天数: 137 天

    [LV.7]常住居民III

    37

    主题

    872

    回帖

    3990

    积分

    荣誉版主

    积分
    3990
    发表于 2024-3-17 16:07:35 | 显示全部楼层
    目前 STC51  IP核有 3个构架, L0,L1,L2      
    个人理解为 L0 为标准 51核,
       L1 为 251 source模式 251核,
       L2 为 251 binary模式 251核,


    同样的 C测试代码, 估算如下:
    L0: 假如 经 C51编译, 同等主频下, 代码长度 和 执行速度 都是基准 1,
    L1: 经 C251编译(source模式), 代码长度约 1.5-1.8倍, 执行速度约提升 1.7-2.3倍,
    L2: 经 C251编译(binary模式), 代码长度约 1.3-1.6倍, 执行速度约提升 2.0-2.6倍,
    特列:
    L1: 经 C51编译(使用251 source模式), 代码长度约 1.1-1.3倍, 执行速度提升约 1.5-1.8倍.

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    6 天前
  • 签到天数: 137 天

    [LV.7]常住居民III

    37

    主题

    872

    回帖

    3990

    积分

    荣誉版主

    积分
    3990
    发表于 2024-3-17 17:47:24 | 显示全部楼层
    这是 C51所带的 标准库函数 存储器拷贝函数 memcpy,  又臭又长



    COPY_DATA_DATA:
                        MOV      A,@R1
                          INC      R1
                          MOV      @R0,A
                           INC      R0
                          DJNZ     R7,COPY_DATA_DATA
                          SJMP     COPY_END1
    COPY_DATA_PDATA:
                        MOV      A,@R1
                    INC      R1
                           MOVX     @R0,A
                           INC      R0
                          DJNZ     R7,COPY_DATA_PDATA
                          SJMP     COPY_END1
    COPY_DATA_XDATA:
                        MOV      DPL,R0
                          MOV      DPH,R4
    COPY_IX_001:MOV      A,@R1
                    INC      R1
                    MOVX     @DPTR,A
                     INC      DPTR
                          DJNZ     R7,COPY_IX_001
                          SJMP     COPY_END1
    COPY_PDATA_DATA:
                        MOVX     A,@R1
                    INC      R1
                    MOV      @R0,A
                           INC      R0
                          DJNZ     R7,COPY_PDATA_DATA
                          SJMP     COPY_END
    COPY_PDATA_PDATA:
                        MOVX     A,@R1
                           INC      R1
                          MOVX     @R0,A
                    INC      R0
                          DJNZ     R7,COPY_PDATA_PDATA
                         SJMP     COPY_END
    COPY_PDATA_XDATA:
                        MOV      DPL,R0
                          MOV      DPH,R4
    COPY_PX_001:MOVX     A,@R1
                           INC      R1
                           MOVX     @DPTR,A
                           INC      DPTR
                          DJNZ     R7,COPY_PX_001
                          SJMP     COPY_END
    COPY_XDATA_DATA:
                        MOV      DPL,R1
                          MOV      DPH,R2
    COPY_XI_001:MOVX     A,@DPTR
                           INC      DPTR
                    MOV      @R0,A
                    INC      R0
                           DJNZ     R7,COPY_XI_001
                          SJMP     COPY_END
    COPY_XDATA_PDATA:
                        MOV      DPL,R1
                          MOV      DPH,R2
    COPY_XP_001:MOVX     A,@DPTR
                           INC      DPTR
                           MOVX     @R0,A
                          INC      R0
                          DJNZ     R7,COPY_XP_001
    COPY_END1:  SJMP     COPY_END
    TAB_001:    SJMP     COPY_PDATA_PDATA
                          SJMP     COPY_END
                          SJMP     COPY_PDATA_DATA
                           SJMP     COPY_PDATA_XDATA
                          SJMP     COPY_CODE_PDATA
                          SJMP     COPY_END
                          SJMP     COPY_CODE_DATA
                          SJMP     COPY_CODE_XDATA
                          SJMP     COPY_DATA_PDATA
                          SJMP     COPY_END
                          SJMP     COPY_DATA_DATA
                         SJMP     COPY_DATA_XDATA
                          SJMP     COPY_XDATA_PDATA
                          SJMP     COPY_END
                          SJMP     COPY_XDATA_DATA
                         SJMP     COPY_XDATA_XDATA
    COPY_CODE_XDATA:
                        MOV      DPL,R1
                          MOV      DPH,R2
                           MOV      A,R4
                           MOV      R2,A
    COPY_CX_001:CLR      A
                           MOVC     A,@A+DPTR
                    INC      DPTR
                    XCH      A,R0
                          XCH      A,DPL
                    XCH      A,R0
                           XCH      A,R4
                          XCH      A,DPH
                    XCH      A,R4
                           MOVX     @DPTR,A
                    INC      DPTR
                    XCH      A,R0
                          XCH      A,DPL
                    XCH      A,R0
                    XCH      A,R4
                          XCH      A,DPH
                           XCH      A,R4
                          DJNZ     R7,COPY_CX_001
                          DJNZ     R6,COPY_CX_001
                          SJMP     COPY_END2
    COPY_CODE_DATA:
                        MOV      DPL,R1
                          MOV      DPH,R2
    COPY_CI_001:CLR      A
                    MOVC     A,@A+DPTR
                    INC      DPTR
                           MOV      @R0,A
                    INC      R0
                         DJNZ     R7,COPY_CI_001
    COPY_END:        MOV      A,R4
                           MOV      R2,A
    COPY_END2:        MOV      R1,B
                           MOV      A,R5
                    MOV      R3,A
                    RET      
    COPY_XDATA_XDATA:
                        MOV      DPL,R1
                          MOV      DPH,R2
                    MOV      A,R4
                    MOV      R2,A
    COPY_XX_001:MOVX     A,@DPTR
                           INC      DPTR
                    XCH      A,R0
                          XCH      A,DPL
                    XCH      A,R0
                    XCH      A,R4
                          XCH      A,DPH
                    XCH      A,R4
                    MOVX     @DPTR,A
                    INC      DPTR
                    XCH      A,R0
                          XCH      A,DPL
                           XCH      A,R0
                    XCH      A,R4
                          XCH      A,DPH
                           XCH      A,R4
                          DJNZ     R7,COPY_XX_001
                          DJNZ     R6,COPY_XX_001
                          SJMP     COPY_END2
    COPY_CODE_PDATA:
                        MOV      DPL,R1
                          MOV      DPH,R2
    COPY_CP_001:CLR      A
                    MOVC     A,@A+DPTR
                           INC      DPTR
                    MOVX     @R0,A
                    INC      R0
                          DJNZ     R7,COPY_CP_001
                          SJMP     COPY_END
    ?C?COPY:
                          MOV      B,R0
                    MOV      A,R7
                          JZ       $+3
                    INC      R6
                            ORL      A,R6
                          JZ       COPY_END
    //                        MOV      B,R0
                    MOV      A,R5
                          ADD      A,#0x02
                        CJNE     A,#0x04,$+3
                        JNC      COPY_END
                          MOV      DPL,A
                           MOV      A,R3
                          ADD      A,#0x02
                        CJNE     A,#0x04,$+3
                        JNC      COPY_END
                           RL       A
                    RL       A
                          ORL      A,DPL
                    RL       A
                        MOV      DPTR,#TAB_001  
                    JMP      @A+DPTR


    回复 支持 反对 送花

    使用道具 举报

    高级模式
    B Color Image Link Quote Code Smilies |上传

    本版积分规则

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

    GMT+8, 2024-5-9 11:16 , Processed in 0.078692 second(s), 70 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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