Logisim計組實驗九 存儲系統

原理:點這裏
本章節均已通過educoder平臺測試~

字庫電路

電路

字庫文件在16點陣字庫文件分拆中
加載即可
電路圖
在這裏插入圖片描述

然後注意字庫不是均分!!按順序放入!!
我還傻傻寫了個均分的程序…

import java.io.*;

public class SplitFileUtil {


    public static void main(String[] args) {

        String targetFile = "C:\\Users\\Administrator\\Desktop\\字庫文件\\HZK16_1.txt";
        String saveDir = "C:\\Users\\Administrator\\Desktop\\字庫文件\\";
        String saveFileName = "結果";
        String suffix = "txt";
        long splitSize = 2209;
        try {
            splitFile(targetFile, saveDir, saveFileName, suffix, splitSize);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    public static void splitFile(String targetFile, String saveDir , String saveFileName, String suffix,long splitSize) throws Exception {
        File file = new File(targetFile);
        BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8"));
        String str = null;
        long len = 0;
        BufferedWriter writer = null;
        while ((str = reader.readLine()) != null) {
            long txtSize = (len / splitSize) + 1;
            String fileName = saveDir + saveFileName + txtSize + "." + suffix;
            writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileName, true),"gb2312"));
            writer.write(str + System.lineSeparator() );
            writer.flush();
            len ++;
        }
        writer.close();
        reader.close();
        System.out.println("執行完成");
    }
}

載入即可。

MIPS RAM設計

原理和要求

在這裏插入圖片描述
在這裏插入圖片描述
補充:
Addr在字訪問時忽略最低兩位;半字訪問時忽略最低位,倒數第二位爲片選;字節訪問時,第二位進行片選。
這裏的難點是如何進行Din分割,和str信號的選取。
首先要理解片選信號和存儲單元的關係。
爲了避免存儲單元中的數據被覆蓋,所以要根據Mode和第二位決定4個存儲器哪一個需要去存儲。
以最低位存儲器的str信號來說,字訪問的時候str必須高電平;1字節訪問的時候當片選信號爲0才進行訪問;2字節訪問的時候,片選信號爲0時進行訪問。

電路圖

在這裏掙扎了12小時,這個課對自學者來說太不友好了,很多細節太模糊了,真心希望能提供答案啊,朋友們幫忙去mooc上評論一下希望老師提供答案吧。
嘗試的時間太多就是無用的浪費了。

str信號區
在這裏插入圖片描述
其它區域
在這裏插入圖片描述

測試

在這裏插入圖片描述

MIPS寄存器文件設計

在做了在做了.jpg

Cache映射機制與邏輯實現

硬件Cache機制設計實驗

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章