1431
指导设计。
2.6 虚拟CPU状态转移图。
1432
指导设计。
2.6 虚拟CPU状态转移图。
1433
指导设计。
2.6 虚拟CPU状态转移图。
记不记得CPU有哪些端口?
看一眼。
1434
指导设计。
2.6 虚拟CPU状态转移图。
1435
指导设计。
2.6 虚拟CPU状态转移图。
1436
指导设计。
2.6 虚拟CPU状态转移图。
先把状态做好,然后我们一起来讨论,置位以后,CPU要干什么?
这个CPU不干别的事,它没有指令,也不读指,也不取指。
是个虚拟的。
上电以后,它只做这一件事。
就是访问ACC。
1437
指导设计。
2.6 虚拟CPU状态转移图。
所以说这个时候,置位了以后,这个CPU的状态机该如何动作?
这一步呢,我先说一下。
CPU呢,首先它要工作之前,无论是CPU还是ACC,在它这个架构上面,唯一的一件事情一定要做,就是一定要获得仲裁。
没有仲裁,就没有任何动作。
所以说第一步到RST,第二步到仲裁。
仲裁结果不是它,就要等待。
1438
指导设计。
2.6 虚拟CPU状态转移图。
仲裁结果不是CPU,CPU就必须等了。
但是等着的时候呢,也不能干等,所以说它也要发出请求。
因为我们在复位的时候,CPU没有发出请求。
1439
指导设计。
2.6 虚拟CPU状态转移图。
CPU置位以后,CPU要有请求。
当它未获得资源的时候,它就必须等了。
然后是s0指向s1。
cpu_req要开着。
复位的时候,cpu_req是关着的。
进来后,cpu_req无论如何要开着。
所以cpu_req一定要保持着。
这个时候只有把cpu_req保持住,它的CPU资源才不会断。
1440
指导设计。
2.6 虚拟CPU状态转移图。
根据唯一申请者获得资源的这个仲裁策略,仲裁器才不会把资源交给别人。
紧接着做s1。
先把s1指向s2。
