chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

內存尋址的具體設計

FPGA研究院 ? 來源: FPGA開發(fā)之路 ? 2023-12-16 09:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文的目的不是介紹內存尋址的具體設計,其實很多細節(jié)我也不了解,而是想通過內存尋址的設計思想看看對 FPGA 的設計有什么幫助和借鑒。

內存尋址有兩個的重要的設計:

內存分頁

頁表分級

關于內存分頁 - 規(guī)整即簡單

內存分頁即將內存分割為以頁(一般是4KB)為單元的塊,然后內存的分配和使用都是以頁為最小單元。假如一個進程只需要 2KB 的內存,仍然給其分配 4KB(一頁)的空間。

關于內存分頁的好處,我覺得知乎上一位知友的描述非常生動和形象。他將內存分頁比喻為停車場劃分停車位。停車位的劃分使得停車人尋找停車位時變得簡單,停車人不再需要自己判斷位置空間是否夠大能停下車,只需要看有沒有空位即可。同時也使停車位的使用管理變得高效,停車場管理人員可以很容易判斷并發(fā)布停車位的空位信息。當然,這可能只是內存分頁的好處中的其中一個。

我們可以總結一下內存分頁的使用場景:

有一塊大的 memory 空間

有很多 Users 要使用 memory

Users 使用 memory 的時間和空間大小不確定

那么當我們在 FPGA 設計中遇到這樣類似的場景時,便可以借鑒內存分頁的思想,將 memory 劃分為不同的塊,來提高 memory 的使用和管理效率。當然,對于 memory 塊的劃分可能導致 memory 的浪費,像前面舉的例子,只需要 2KB 的內存,卻分配了 4KB 的空間。如何正確的取舍,去做 tradeoff,這也是設計者需要考慮的。

再往本質里看,這其實是硬件設計上的一個“規(guī)整”問題。就像CPU指令集的設計,因為不同指令對 bit 利用的規(guī)整,簡化了CPU的設計。規(guī)整即簡單。

關于頁表分級 - 時間換空間

頁表是用來將虛擬地址映射為物理地址的數(shù)據(jù)結構。對于 4KB 的頁單元,需要 12-bit 來尋址。如果地址線的總位寬是 32-bit,那么我們需要 2^20 (32-12=20) 個頁表,假如每個表項用 4 byte,那么頁表總共要用到 4MB 的內存。這還只是一個進程用到的空間。

頁表分級減少了頁表對內存的使用量。用過兩級分頁(第一級頁目錄+第二級頁表),即先通過第一級頁目錄查找到頁表,再通過第二級頁表去查找頁,只有當?shù)谝患壍捻撃夸涰椨玫綍r才去分配第二級的頁表。舉個例子,假如頁目錄和頁表分別占用10-bit。頁目錄有2^10個項 (一共占用 4KB 內存),假如頁目錄只有第一項被用到,那么我們只需要分配其對應的頁表,這個頁表也是有2^10個項 (一共占用 4KB 內存),那么此時只用到了 4KB+4KB = 8KB 內存,相比于 4MB 節(jié)省了很大部分。

我們總結一下頁表分級的場景:

多個 Users 共用一份地址線訪問 memory

每個 Users 都需要自己的 memory 空間

實際有效的 Users 的數(shù)目是動態(tài)變化的

Users 對 memory 空間的使用也是動態(tài)變化的

遇到類似的場景我們便可以考慮將地址分級,對 Users 動態(tài)分配 memory 空間,幾個 Users 甚至可以復用一份 memory,達到節(jié)省 memory 使用的目的。這樣做當然增加了 memory 控制和管理的復雜度,也是設計上的 tradeoff。

再往本質里看,這個場景其實利用了事件發(fā)生的時間上的差異。是時間“換”空間的概念,地址分級只是實現(xiàn)這個概念的一個手段。

總結

本文思考了內存尋址的兩個設計點對 FPGA 設計的借鑒意義。很多時候,設計的思想是相通的,尤其是像 CPU 或者 Linux內核 這樣的經典的,經久不衰的設計。

來源: 本文轉載自FPGA開發(fā)之路 公眾號

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1663

    文章

    22491

    瀏覽量

    638896
  • 內核
    +關注

    關注

    4

    文章

    1474

    瀏覽量

    43088
  • cpu
    cpu
    +關注

    關注

    68

    文章

    11320

    瀏覽量

    225804
  • Linux
    +關注

    關注

    88

    文章

    11806

    瀏覽量

    219498
  • 內存
    +關注

    關注

    9

    文章

    3229

    瀏覽量

    76493

原文標題:從內存尋址看 FPGA 設計

文章出處:【微信號:FPGA研究院,微信公眾號:FPGA研究院】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    使用直接尋址方式提高速度

    在嵌入式系統(tǒng),特別是資源受限的環(huán)境中,盡量使用直接尋址方式來提高速度是一個有效的優(yōu)化策略。以下是一些具體方法和示例,幫助你盡可能多地使用直接尋址的變量,從而提高系統(tǒng)性能。 直接尋址
    發(fā)表于 12-04 06:28

    什么是單片機尋址方式?尋址方式有哪些?

    的內容為20H,則執(zhí)行MOV R1,A指令后,內部RAM 09H單元的值就變?yōu)?0H。2. 直接尋址直接尋址是指把存放操作數(shù)的內存單元的地址直接寫在指令中。在MCS-51單片機中,可以直接尋址
    發(fā)表于 01-13 14:54

    單片機的可尋址內存是何意思

    說到單片機,我的第一反應是這個:(是不是感覺很厲害/手動滑稽)然而,拿到手卻發(fā)現(xiàn)是這樣的:(以為自己拿到了一條蜈蚣/手動滑稽)但是,咱們的這個僅有八個腳,可尋址內存只有64K的單片機(可尋址
    發(fā)表于 02-16 06:42

    間接尋址的應用

    介紹:本文介紹如何進行間接尋址,并舉例說明如何利用間接尋址來清內存。
    發(fā)表于 07-01 11:56 ?14次下載

    單片機尋址能力的解讀

    單片機尋址能力的解讀:CPU位寬與內存尋址能力沒有關系
    發(fā)表于 12-27 15:30 ?1次下載

    ARM指令尋址方式之內存訪問指令尋址

    4.2 內存訪問指令尋址 根據(jù)內存訪問指令的分類,內存訪問指令的尋址方式可以分為以下幾種。 ① 字及無符號字節(jié)的Load/Store指令的
    發(fā)表于 10-18 16:32 ?1次下載
    ARM指令<b class='flag-5'>尋址</b>方式之<b class='flag-5'>內存</b>訪問指令<b class='flag-5'>尋址</b>

    處理器系列之尋址空間詳解

    一、什么叫尋址空間? 尋址空間一般指的是CPU對于內存尋址的能力。通俗地說,就是能最多用到多少內存的一個問題。數(shù)據(jù)在存儲器(RAM)中存放是
    發(fā)表于 01-26 01:20 ?6298次閱讀

    plc的尋址方式:立即尋址、直接尋址、間接尋址

    我們都知道西門子200plc有三種尋址方式:立即尋址、直接尋址、間接尋址;這里主要給大家區(qū)分下直接和間接尋址 1、直接
    的頭像 發(fā)表于 09-25 11:50 ?2.4w次閱讀
    plc的<b class='flag-5'>尋址</b>方式:立即<b class='flag-5'>尋址</b>、直接<b class='flag-5'>尋址</b>、間接<b class='flag-5'>尋址</b>

    西門子PLC如何尋址具體方法是怎樣的

    西門子S7-200編程語言的基本單位是語句,語句由指令組成。每條指令有兩部分:一部分是操作碼,另一部分是操作數(shù)。操作碼指示該指令的功能是什么,操作數(shù)指示操作碼所需的數(shù)據(jù)在哪里。尋址是尋找操作數(shù)的過程
    發(fā)表于 12-20 09:34 ?7929次閱讀

    尋址方式與內存計算的詳細說明

    指令轉移示意圖如下: 地址指針的字長是二進制的16位,說明可以表達的地址個數(shù)為2^16個。 2^16=(2^6)*(2^10)=64*1024=64KB,也就是它的可尋址范圍是64KB,相應的地址號
    的頭像 發(fā)表于 06-18 20:34 ?8533次閱讀
    <b class='flag-5'>尋址</b>方式與<b class='flag-5'>內存</b>計算的詳細說明

    PLC中為什么要間接尋址?直接尋址不行嗎?

    PLC中為什么要間接尋址?直接尋址不行嗎? PLC,也稱程序可編程控制器,是一種專門用于自動化控制的電子設備,廣泛應用于各種工業(yè)領域中。在PLC編程中,常常用到尋址的概念,以便讀取或控制具體
    的頭像 發(fā)表于 09-15 14:59 ?3005次閱讀

    什么是PLC直接尋址和間接尋址?

    什么是PLC直接尋址和間接尋址?? PLC直接尋址和間接尋址是在程序設計中經常使用的兩種方法。直接尋址指的是根據(jù)地址直接訪問特定的
    的頭像 發(fā)表于 09-15 14:59 ?3805次閱讀

    寄存器尋址的實現(xiàn)方式

    在計算機體系結構中,寄存器尋址是一種常見的尋址方式,它允許程序直接訪問CPU內部的寄存器。寄存器尋址可以提高程序的執(zhí)行效率,因為它避免了對內存的訪問。 寄存器
    的頭像 發(fā)表于 07-12 10:36 ?2503次閱讀

    寄存器尋址和直接尋址的區(qū)別

    寄存器尋址和直接尋址是計算機指令系統(tǒng)中的兩種基本尋址方式。它們在指令的執(zhí)行過程中起著至關重要的作用,決定了指令操作數(shù)的來源和目標。下面我們將介紹這兩種尋址方式的特點、區(qū)別以及在實際應用
    的頭像 發(fā)表于 07-12 10:42 ?5900次閱讀

    DDR4尋址原理詳解

    )的尋址原理是計算機內存系統(tǒng)中至關重要的一個環(huán)節(jié),它決定了數(shù)據(jù)如何在內存中被有效地存儲和訪問。DDR4的尋址原理復雜而高效,以下將詳細闡述其關鍵要素和工作流程。
    的頭像 發(fā)表于 09-04 12:38 ?3842次閱讀