广州大学计算机组成原理课程设计

一.课设性质,目的,任务

《计算机组成与系统结构课程设计》是计算机学院各专业集中实践性环节之一,是学习完《计算机组成与系统结构》课程后进行的一次全面的综合练习。其目的是综合运用所学计算机原理知识,设计并实现一台模型计算机,以便巩固所学的知识,提高分析问题和解决问题的能力。

二.课设基本理论

1、掌握算术、逻辑、移位运算实验,熟悉ALU运算控制位的运用。

2、掌握存储器组织、读写方式及与总路线组成的数据通路,掌握地址总线、数据总线的工作原理。

3、掌握指令结构和指令取指、执行工作过程。

4、掌握CPU的微程序控制原理。

三. 题目

综合运用所学计算机原理知识,设计并实现具有以下16条指令的指令集结构的模型计算机:

编号

助记符

机器指令码

说明

0

SUB  Rd,Rs

0000 RdRs

110 0000 0000

Rd-Rs→Rd

1

ADD  Rd,Rs

0001 RdRs

110 0010 0000

Rd+Rs→Rd

2

AND  Rd,Rs

0010 RdRs

110 0100 0000

Rd&Rs→Rd (Rd和Rs相与)

3

DEC Rd

0011 Rd00

110 0110 0000

将Rd值减1

4

CLR Rd

0100 Rd00

110 1000 0000

将Rd清零

5

RL  Rd

0101 Rd00 

110 1010 0000

Rd循环左移一位

6

RRC  Rd

0110 Rd00

110 1100 0000

Rd带进位右移一位

7

MOV Rd,Rs

0111 RdRs

110 1110 0000

Rs→Rd

8

LDI  Rd,*

1000 Rd00   XXXXXXXX

111 0000 0000

将指令中的立即数(第二字节)送入Rd

9

OUT  IOH,Rs

1001 00Rs Rs送到高字节显示

111 0010 0000

Rs→i/o(数据开关)高字节

10

LDA  Rd,M

1010 Rd00   XXXXXXXX   XXXXXXXX

三个字节 将16位地址取出来 送到Rd寄存器

111 0100 0000

[M] →Rd

11

STA  M,Rs

1011 00Rs   XXXXXXXX   XXXXXXXX

将Rs内容存到这16位地址中

111 0110 0000

Rs→[M]

12

JMP M

1100 0000  XXXXXXXX   XXXXXXXX

跳转到某个地址

111 1000 0000

[M]→PC,即跳转到M所指单元

13

JZ M

1101 0000  XXXXXXXX   XXXXXXXX

111 1010 0000

当Z=1时,跳转到M所指单元

14

JC M

1110 0000  XXXXXXXX   XXXXXXXX

111 1100 0000

当CY=1时,跳转到M所指单元

15

HALT

1111 0000

111 1110 0000

6A0

停机

设计提示:

1、上表中,机器指令码的高4位为指令操作码,M为16位存储器地址, Rs为源寄存器,Rd为目的寄存器,占2位,并规定:

RsRd

选定的寄存器

00

01

10

11

R0

R1

R2

R3

2、在微程序中,微地址001为取指,微指令为BF FB F8。

3、各指令指行阶段微程序入口地址的确定方式:

微地址位号

10   9

8   7  6   5

4  3  2  1  0

内容

1    1

IR7~IR4

0  0  0  0  0

例如,第5条指令”RL  Rd”  的指令码为0101 Rd00  则指令码的高4位IR7~IR4为0101,由上表知,微程序入口微地址为: 11 0101 00000 ,即6A0H。

4、主要步骤:

(1)按照第3点的方法,给出所有16条指令的微程序入口微地址;

(2)通过分析每条指令的功能明确其的微程序流程,可参考实验指导书图3-4-1、图3-2-2、图3-3-1;

(3)写出每条微指令的微命令,即24个微控制位信号,可参考实验指导书表3.4.1、表3.2.1、表3.3.1和“微控制器编程手册”第2章。

(4)建议采用逐条指令设计实现的方式,一条实现并用汇编语句测试通过后(指令功能、下址顺序均正确)再进行下一条的设计。

5、检查

模型计算机设计完成后,用所给的测试程序check_1.asm(测12条非转移指令)和check_2.asm(测3条转移指令)检查正确性。检查方法:在测试程序中#load s本人的.IS微指令程序,实验箱电源关闭重启并连接,装载后选择“运行”或“单步”执行。

check_1.asm运行的正确结果为:寄存器R0R1R2R3分别显示00112233,IOH显示33。

check_2.asm运行的正确结果为:寄存器R0R1R2R3分别显示00112233,如果显示EE则执行有错误。

四.微程序流程图(树形图)

五.机器指令程序的说明(微指令地址,指令码,助记符)

  1. 实验源代码

过程分析

Check20_1.ASM 实验源代码如下:

Check20_1.ASM 实验源代码如下:

2、微指令地址

;分段/RISC模型机指令系统;助记符 操作数              指令码 长度;-----------------------------------------------------;Rd-Rs→RdSUB     R0,R0               00     1SUB     R0,R1               01     1SUB     R0,R2               02     1SUB     R0,R3               03     1SUB     R1,R0               04     1SUB     R1,R1               05     1SUB     R1,R2               06     1SUB     R1,R3               07     1SUB     R2,R0               08     1SUB     R2,R1               09     1SUB     R2,R2               0A     1SUB     R2,R3               0B     1SUB     R3,R0               0C     1SUB     R3,R1               0D     1SUB     R3,R2               0E     1SUB     R3,R3               0F     1;Rd+Rs→RdADD     R0,R0               10     1ADD     R0,R1               11     1ADD     R0,R2               12     1ADD     R0,R3               13     1ADD     R1,R0               14     1ADD     R1,R1               15     1ADD     R1,R2               16     1ADD     R1,R3               17     1ADD     R2,R0               18     1ADD     R2,R1               19     1ADD     R2,R2               1A     1ADD     R2,R3               1B     1ADD     R3,R0               1C     1ADD     R3,R1               1D     1ADD     R3,R2               1E     1ADD     R3,R3               1F     1;Rd&Rs→Rd (Rd和Rs相与)AND     R0,R0               20     1AND     R0,R1               21     1AND     R0,R2               22     1AND     R0,R3               23     1AND     R1,R0               24     1AND     R1,R1               25     1AND     R1,R2               26     1AND     R1,R3               27     1AND     R2,R0               28     1AND     R2,R1               29     1AND     R2,R2               2A     1AND     R2,R3               2B     1AND     R3,R0               2C     1AND     R3,R1               2D     1AND     R3,R2               2E     1AND     R3,R3               2F     1;将Rd值减1DEC     R0                  30     1DEC     R1                  34     1DEC     R2                  38     1DEC     R3                  3C     1;将Rd清零CLR     R0                  40     1CLR     R1                  44     1CLR     R2                  48     1CLR     R3                  4C     1;Rd循环左移一位RL      R0                  50     1RL      R1                  54     1RL      R2                  58     1RL      R3                  5C     1;Rd带进位右移一位RRC     R0                  60     1RRC     R1                  64     1RRC     R2                  68     1RRC     R3                  6C     1;Rs→RdMOV     R0,R0               70     1MOV     R0,R1               71     1MOV     R0,R2               72     1MOV     R0,R3               73     1MOV     R1,R0               74     1MOV     R1,R1               75     1MOV     R1,R2               76     1MOV     R1,R3               77     1MOV     R2,R0               78     1MOV     R2,R1               79     1MOV     R2,R2               7A     1MOV     R2,R3               7B     1MOV     R3,R0               7C     1MOV     R3,R1               7D     1MOV     R3,R2               7E     1MOV     R3,R3               7F     1;将指令中的立即数(第二字节)送入RdLDI     R0,*                80     2LDI     R1,*                84     2LDI     R2,*                88     2LDI     R3,*                8C     2;Rs→I/O(数据开关)高字节OUT     IOH,R0              90     1OUT     IOH,R1              91     1OUT     IOH,R2              92     1OUT     IOH,R3              93     1;[M] →RdLDA     R0,*                A0     3LDA     R1,*                A4     3LDA     R2,*                A8     3LDA     R3,*                AC     3;Rs→[M]STA     *,R0                B0     3STA     *,R1                B1     3STA     *,R2                B2     3STA     *,R3                B3     3;[M]→PC,即跳转到M所指单元JMP     *                   C0     3;当Z=1时,跳转到M所指单元JZ      *                   D0     3;当CY=1时,跳转到M所指单元JC      *                   E0     3;停机HALT    ""                  F0     1

六.微型机微指令表

微址00002)1)

M23

M22

M21

M20

M19

M18

M17

M16

代码

M15

M14

M13

M12

M11

M10

M9

M8

代码

M7

M6

M5

M4

M3

M2

M1

M0

代码

后续微址

说明

E/M

IP

MWR

R/M

o2

o1

O0

OP

M

CN

S2

S2

S0

X2

X1

X0

XP

W

ALU

Iu

IE

IR

Icz

Ids

0600

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

1

0

06

1

0

0

0

1

0

0

0

88

+1

Rd->AX

0601

0

0

0

0

0

1

1

1

05

0

0

0

0

0

1

1

0

06

0

0

0

0

0

0

0

0

00

+1

Rs->BX

0602

0

0

0

0

1

1

1

1

0F

1

0

0

1

0

0

0

1

91

1

0

0

1

0

0

1

0

92

0001

AX-BX->Rd

0620

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

1

0

06

1

0

0

0

1

0

0

0

88

+1

Rd->AX

0621

0

0

0

0

0

1

0

1

05

0

0

0

0

0

1

1

0

06

0

0

0

0

0

0

0

0

00

+1

Rs->BX

0622

0

0

0

0

1

1

1

1

0F

1

0

0

1

1

0

0

1

99

1

0

0

1

0

0

1

0

92

0001

AX+BX->Rd

0640

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

1

0

06

1

0

0

0

0

0

0

0

80

+1

Rd->AX

0641

0

0

0

0

0

1

0

1

05

0

0

0

0

0

1

1

0

06

0

0

0

0

0

0

0

0

00

+1

Rs->BX

0642

0

0

0

0

1

1

1

1

0F

0

0

0

1

0

0

0

1

11

1

0

0

1

0

0

1

0

92

0001

AX&BX->Rd

0660

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

1

0

06

1

0

0

0

0

0

0

0

80

+1

Rd->AX

0661

0

0

0

0

1

1

1

1

0F

0

0

1

0

1

0

0

1

29

1

0

0

1

0

0

1

0

92

0001

AX-1->Rd

0680

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

1

0

06

1

0

1

0

0

0

0

0

A0

+1

Rd->AX

0681

0

0

0

0

1

1

1

1

0F

0

0

1

0

0

0

0

1

21

1

0

1

1

0

0

1

0

B2

0001

Ax=0->Rd

06A0

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

1

0

06

1

0

0

0

0

0

0

0

80

+1

Rd->AX

06A1

0

0

0

0

1

1

1

1

0F

1

0

1

0

1

0

0

1

A9

1

0

0

1

0

0

1

0

92

0001

RLA->Rd

06C0

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

1

0

06

1

0

0

0

0

0

0

0

80

+1

Rd->AX

06C1

0

0

0

0

1

1

1

1

0F

1

0

1

0

0

0

0

1

A1

1

0

0

1

0

0

1

0

92

0001

RRCA->Rd

06E0

0

0

0

0

1

1

1

1

0F

0

0

0

0

0

1

1

0

06

0

0

0

1

0

0

1

0

12

0001

Rd=Rs

0700

0

0

0

0

0

1

1

1

05

0

0

0

0

0

0

1

0

04

0

0

0

0

0

0

0

0

00

+1

ROM->BX

0701

0

1

0

0

1

1

1

1

4F

0

0

1

1

1

0

0

1

39

1

0

0

1

0

0

1

0

92

0001

BX->Rd

0720

0

0

0

0

1

0

1

0

0A

0

0

0

0

0

1

1

0

06

0

0

0

1

0

0

1

0

12

0001

Rs->IOH

0740

0

0

0

0

0

1

1

1

05

0

0

0

0

0

0

1

0

04

0

0

1

0

0

0

0

0

20

+1

ROM->BL

0741

0

1

0

0

0

1

0

0

44

0

0

1

1

0

1

0

0

34

0

0

1

0

0

0

0

0

20

+1

ROM->BH

0742

0

1

0

0

0

0

1

1

43

0

0

1

1

1

0

0

1

39

1

1

0

0

0

0

0

0

C0

+1

BX->AR

0743

0

1

0

0

1

1

1

1

8F

0

0

0

0

0

1

0

0

04

0

0

0

1

0

0

1

0

12

0001

RAM->Rd

0760

0

0

0

0

0

1

1

1

05

0

0

0

0

0

0

1

0

04

1

0

0

0

0

0

0

0

80

+1

ROM->BL

0761

0

1

0

0

0

1

0

0

44

0

0

0

0

0

1

0

0

04

0

0

0

0

0

0

0

0

00

+1

ROM->BH

0762

0

1

0

0

0

0

1

1

43

0

0

1

1

1

0

0

1

39

1

1

0

0

0

0

0

0

C0

+1

BX->AR

0763

1

0

1

0

0

 0

0

0

A0

0

0

0

0

0

1

1

0

06

0

0

0

1

0

0

1

0

12

0001

Rs->RAM

0780

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

0

0

04

0

0

0

0

0

0

0

0

00

+1

ROM->BL

0781

0

1

0

0

0

1

1

0

46

0

0

0

0

0

1

0

0

04

0

0

0

0

0

0

0

0

00

+1

ROM->BH

0782

1

1

0

0

0

0

0

1

C1

0

0

0

0

0

0

0

1

01

1

1

0

1

0

0

1

0

D2

0001

BX->PC

07A0

0

0

0

0

0

1

1

1

05

0

0

1

1

1

1

0

0

3C

0

0

0

0

0

0

0

0

00

+1

ROM->BL

07A1

0

1

0

0

0

1

0

0

44

0

0

1

1

1

1

0

0

3C

0

0

0

0

0

0

0

0

00

+1

ROM->BH

07A2

0

1

0

0

0

0

0

0

40

0

0

1

1

1

0

0

0

38

0

0

0

0

0

0

1

1

03

07A4

判定0标志

07A4

0

0

0

0

0

0

0

0

00

0

0

1

1

1

0

0

0

38

0

0

0

1

0

0

1

0

12

0001

空操作

07A5

1

1

0

0

0

0

0

1

C1

0

0

1

1

1

0

0

0

38

1

1

0

1

0

0

1

0

D2

0001

BX->PC

07C0

0

0

0

0

0

1

1

1

05

0

0

0

0

0

1

0

0

04

0

0

0

0

0

0

0

0

00

+1

ROM->BL

07C1

0

1

0

0

0

1

0

0

44

0

0

0

0

0

1

0

0

04

0

0

0

0

0

0

0

0

00

+1

ROM->BH

07C2

0

1

0

0

0

0

0

0

40

0

0

0

0

0

0

0

0

00

0

0

0

0

0

1

0

1

05

07C4

判定CY标志

07C4

0

0

0

0

0

0

0

0

00

0

0

0

0

0

0

0

0

00

0

0

0

1

0

0

1

0

12

0001

空操作

07C5

1

1

0

0

0

0

0

1

C1

0

0

1

1

1

0

0

1

39

1

1

0

1

0

0

1

0

D2

0001

BX->PC

07E0

0

0

0

0

0

1

1

1

07

0

0

0

0

0

1

1

1

07

1

1

0

0

0

0

0

0

C0

+1

PC->AX

07E1

1

1

0

0

0

0

0

0

C0

0

0

1

0

1

0

0

1

29

1

1

0

1

0

0

1

0

D2

07E0

AX-1->PC

七.结果与指令调试过程

     Check_1(截图)

     Check_2(截图)

check20_1.asm程序的运行结果

check20_2.asm程序的运行结果

八.存在的问题和体会

1、过程中出现的问题:

(1)时序问题:

 在设计RL(Rd循环左移一位)这条微指令时,由于时序关系设置不正确,导致RL指令执行的时序出错。后来重新检查RL指令对应的微指令的时序关系,并且使用CMStudio的时序分析工具进行调试,最终解决问题。

(2)在设计JZ,JC指令的时候,刚开始没有考虑到设计一个空操作,在逻辑上没有实现当CY进位/Z置零跳转是在标志位为1时,跳转到地址转移的微指令地址的下一个地址,出现直接跳转到地址转移的微指令地址入口的情况。后来分别在07A3和07C3设置空操作,并且在07A2和07C2出分别设置跳转地址07A4和07C4,最终解决问题。

2、心得体会:

  1. 针对需要取立即数的指令(比如 LDI 指令),在设计相应的微指令时,这些微指令应包括读取 ROM 的操作,同时,对于设置微指令的控制信号,要确保在执行指定指令时,能够将 ROM 中的立即数读取到 AX/BX 寄存器中。
  2. 在设计微指令时,要注意ROM和RAM的区别

ROM 寄存器(只读存储器): ROM 通常用于存储不变的固定数据,如程序代码或常数。在 CMStudio 中,可以通过设置 ROM 的地址线和数据线,将需要的数据存储在 ROM 中。ROM 寄存器一般是只读的,其内容在运行时不能被修改。

RAM 寄存器(随机存储器): RAM 用于存储可读写的数据,如变量、中间结果等。RAM 在 CMStudio 中设计时需要考虑写入和读取操作,以及地址的变化。RAM 寄存器的内容可以在运行时通过指令进行修改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/495035.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MimicBrush:智能图像编辑新宠,能否革新你的创意设计?

一、介绍 MimicBrush 是一款由阿里巴巴和香港大学联合研发的图像编辑工具,它通过模仿参考图像,对目标图像选定区域进行自动局部编辑。以下是关于 MimicBrush 的详细介绍: 1.技术特点 智能匹配 :利用尖端 AI 技术,Mi…

QT用Enigmavb 打包成单独exe

QT用这个工具打包成单个exe,然后再用winrar打包成zip可以发给别人 在之前需要用QT的release打包 之前的文章QTrelease打包【非单个exe】 Enigmavb 打包流程: 安装过程: next-》i accept -》选择安装位置 -》next -》Create a desktop ic…

f(f(x))=x^2 -11x+36, 求f(6)的值,

偶然看到的一个题目,一时兴起,做了一下。题目如下 简单粗暴的思路是待定系数法,盲猜f(x)是个2次函数,令f(x)ax^2bxc ,带入原式,发现矛盾(计算略)就想放弃了。 忽然看到如果带入6 的话&#xf…

华为浏览器(HuaweiBrowser),简约高效上网更轻松

华为浏览器是一款由华为公司自主研发的网页浏览工具,凭借其独特的设计理念和优质的用户体验,正在吸引越来越多的用户关注。这款基于Chromium技术打造的浏览器不仅继承了Chrome的高性能特质,更融入了华为自身的创新元素,为用户打造…

Ubuntu下ESP32-IDF开发环境搭建

Ubuntu下ESP32-IDF开发环境搭建 文章目录 Ubuntu下ESP32-IDF开发环境搭建一、前言二、软件安装三、开发环境搭建3.1 ESP-IDF安装:3.2 安装编译工具: 四、编译并烧录代码五、ESP32代码编辑工具 一、前言 ​ 开发ESP32,我们首先就要安装开发环…

修炼内功之函数栈帧的创建与销毁

修炼内功之函数栈帧的创建与销毁 一 前置知识(1)栈(2)相关寄存器和汇编指令 二 函数栈帧三 代码演示函数栈帧的创建(1)代码演示(2)函数栈帧逐帧分析 四 对开篇问题的解答 相信来CSDN…

学习threejs,THREE.PlaneGeometry 二维平面几何体

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️HREE.PlaneGeometry 二维平…

SpringCloud 入门(4)—— 网关

上一篇:SpringCloud 入门(3)—— Nacos配置中心-CSDN博客 Spring Cloud Gateway 作为 Spring Cloud 生态系统的一部分,主要在微服务架构中充当 API 网关的角色。它提供了统一的入口点来处理所有的 HTTP 请求,并将这些请…

石岩基督教福音堂

周末娃,娃的阿婆和我一起去石岩基督教福音堂做礼拜。 这是我第一次进入石岩的教堂。教堂很高。应该有3,4层楼高。 这周末做礼拜的人很多一楼人满了,阿婆去二楼做礼拜,娃和我去三楼的儿童室。很多家长楼下做礼拜,小朋友被安排三楼…

论文《Vertical Federated Learning: Concepts, Advances, and Challenges》阅读

论文《Vertical Federated Learning: Concepts, Advances, and Challenges》阅读 论文概况纵向联邦VFL框架介绍问题定义VFL 训练协议 对通信效率的优化对性能的优化自监督方案(Self-Supervised Approaches)半监督方案(Semi-Supervised Approa…

如何用gpt来分析链接里面的内容(比如分析论文链接)和分析包含多个文件中的一块代码

如何用gpt来分析链接里面的内容,方法如下 这里使用gpt4里面有一个网路的功能 点击搜索框下面这个地球的形状即可启动搜索网页模式 然后即可提出问题在搜索框里:发现正确识别和分析了链接里面的内容 链接如下:https://arxiv.org/pdf/2009.1…

本地部署webrtc应用怎么把http协议改成https协议?

环境: WSL2 Ubuntu22.04 webrtc视频聊天应用 问题描述: 本地部署webrtc应用怎么把http协议改成https协议? http协议在安卓手机浏览器上用不了麦克风本,来地应用webrtc 本来是http协议,在安卓手机上浏览器不支持使…

面向未来的教育技术:智能成绩管理系统的开发

3.1 可行性研究 成绩管理系统开发实现分析需要从不同的角度来进行分析可行性,比如从时间角度,经济角度,甚至操作角度。从不同的角度分析可行性会让成绩管理系统开发具体化,进而达到辩证开发的正确性。 3.1.1 经济可行性 从经济方面…

zabbix监控山石系列Hillstone监控模版(适用于zabbix7及以上)

监控项: 触发器: 监控数据如下:

UE5 渲染管线 学习笔记

兰伯特 SSS为散射的意思 带Bias的可以根据距离自动切换mip的卷积值 而带Level的值mipmaps的定值 #define A8_SAMPLE_MASK .a 这样应该就很好理解了 这个只采样a通道 带Level的参考上面的 朝左上和右下进行模糊 带Bias参考上面 随机数 4D 3D 2D 1D

ArcGIS Pro 3.4新功能3:空间统计新特性,基于森林和增强分类与回归,过滤空间自相关

目录 应用 1:它是相关性还是托布勒第一定律? 应用 2:将空间带入非空间模型 结论 在 ArcGIS Pro 3.4 中,我们在新的空间组件实用程序(Moran 特征向量)工具集中发布了一个新工具 - 从字段过滤空间自相关。…

【微信小程序】2|轮播图 | 我的咖啡店-综合实训

轮播图 引言 在微信小程序中,轮播图是一种常见的用户界面元素,用于展示广告、产品图片等。本文将通过“我的咖啡店”小程序的轮播图实现,详细介绍如何在微信小程序中创建和管理轮播图。 轮播图数据准备 首先,在home.js文件中&a…

vue3封装而成的APP ,在版本更新后,页面显示空白

一、问题展示 更新之后页面空白,打不开 ,主要是由于缓存造成的 二、解决办法 1、随机数代码实现 使用随机数来动态的生成静态资源目录名可以避免浏览器缓存,但同时每次也会导致浏览器每次都下载最新的资源。如果静态资源过大,可…

JAVA HTTP压缩数据

/*** 压缩数据包** param code* param data* param resp* throws IOException*/protected void writeZipResult(int code, Object data, HttpServletResponse resp) throws IOException {resp.setHeader("Content-Encoding", "gzip");// write到客户端resp…

京东零售数据可视化平台产品实践与思考

导读 本次分享题目为京东零售数据可视化平台产品实践与思考。 主要包括以下四个部分: 1. 平台产品能力介绍 2. 业务赋能案例分享 3. 平台建设挑战与展望 作者:梁臣 京东 数据产品架构师 01平台产品能力介绍 1. 产品矩阵 数据可视化产品是一种利用…