Last active
December 6, 2017 06:26
-
-
Save spiderChow/49d4afb35298b2e60223316755e55675 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| RTL: | |
| 一组register | |
| data path | |
| control logic | |
| operation: | |
| 将reg里面的值改变 | |
| 将一个reg的值放到另一个里面 | |
| R2<-R1 赋值 | |
| If (T1=1) then (R2<-R1, R3<-R1) | |
| 逗号的话 这些在一个时钟周期完成 | |
| 分号的话 前面的完成后面的才完成 | |
| shr 右移 | |
| shl 左移 | |
| transfer:同时进行 | |
| control 逻辑就是为了datapath 服务的 | |
| algorithm: | |
| 解决一个问题的所有操作步骤 | |
| 可以用软件实现,或者硬件实现 | |
| ASM流程图表述硬件设计的总体思路 算法状态机 是一种FSM | |
| ============================== | |
| ASM: | |
| 要素: | |
| 1. 状态box | |
| 2. 判断box | |
| 3. 条件box | |
| 状态box: | |
| state box | |
| 矩形 代表状态 | |
| 有个名字 e.g. s-idel | |
| 一个相应的二进制编码 | |
| 要做的operation e.g. R<-0 而且是摩尔模型的,进入这个状态一定要做。 | |
| 用箭头表示与时间相关的顺序,但是不代表时钟周期。 | |
| 一个输入 | |
| 判别box: | |
| 只有一个输入 | |
| 菱形 | |
| 不做任何operation | |
| 就是判别一个条件是否成立 | |
| 条件box: | |
| 圆角矩形 | |
| 在某个条件成立的情况下进行的operation | |
| 输入必须是一个判别box的输出 | |
| 里面存放的是米丽模型的operation 有条件的 | |
| 和一个state相关的操作是一个时钟周期完成的 | |
| 一个时钟周期完成:判断 后面的操作。但是不是同时,有顺序 | |
| 但是那些后面的操作是同时完成的。 | |
| 两个state box之间是有很多decision condition | |
| 从一个state box开始(包括),到下一个state box之前的里面的所有的操作和判断,都归结到上一个state里面去 | |
| 作为一个block 里面必须一个时钟周期完成 | |
| 一个block 其实表述了一个状态 | |
| 对于一个完整的ASM,当前的工作状态只能处于一个状态之内。 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment