[go: up one dir, main page]

TWI716167B - 儲存裝置及其映射方法 - Google Patents

儲存裝置及其映射方法 Download PDF

Info

Publication number
TWI716167B
TWI716167B TW108138962A TW108138962A TWI716167B TW I716167 B TWI716167 B TW I716167B TW 108138962 A TW108138962 A TW 108138962A TW 108138962 A TW108138962 A TW 108138962A TW I716167 B TWI716167 B TW I716167B
Authority
TW
Taiwan
Prior art keywords
section
register
shadow
data
host
Prior art date
Application number
TW108138962A
Other languages
English (en)
Other versions
TW202117546A (zh
Inventor
鄭乃文
沈子嵐
Original Assignee
新唐科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 新唐科技股份有限公司 filed Critical 新唐科技股份有限公司
Priority to TW108138962A priority Critical patent/TWI716167B/zh
Priority to CN201911298678.1A priority patent/CN112748955B/zh
Priority to US16/871,649 priority patent/US11321091B2/en
Application granted granted Critical
Publication of TWI716167B publication Critical patent/TWI716167B/zh
Publication of TW202117546A publication Critical patent/TW202117546A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/30123Organisation of register space, e.g. banked or distributed register file according to context, e.g. thread buffers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30105Register structure
    • G06F9/30116Shadow registers, e.g. coupled registers, not forming part of the register space
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/30138Extension of register space, e.g. register cache
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

一種儲存裝置,耦接至主機以及第一暫存器,包括第一映射暫存器、影子暫存器以及控制器。第一映射暫存器用以儲存第一暫存器之第一位址。影子暫存器包括第一影子區段,其中第一影子區段係映射至第一暫存器之第一暫存器區段。控制器接收主機發出之初始化指令而將第一位址寫入至第一映射暫存器,使得第一影子區段映射至第一暫存器區段。

Description

儲存裝置及其映射方法
本發明係有關於一種儲存裝置,特別係有關於一種與暫存器映射之儲存裝置及其映射方法。
目前中央處理器對暫存器的存取,往往都是指定一個暫存器位址後再存取該暫存器的內容。當中央處理器需要頻繁的存取複數個暫存器的內容時,重複指定暫存器的位址將造成儲存時間的浪費。為了增進時序(timing)的改善與達成同步的需求,進而中央處理器的效能,有必要針對同時對多個且非固定位址的暫存器進行存取的方式進行優化。
有鑑於此,本發明提出一種儲存裝置,耦接至一主機以及一第一暫存器,包括一第一映射暫存器、一影子暫存器以及一控制器。上述第一映射暫存器用以儲存上述第一暫存器之一第一位址。上述影子暫存器包括一第一影子區段,其中上述第一影子區段係映射至上述第一暫存器之一第一暫存器區段。上述控制器接收上述主機發出之一初始化指令而將上述第一位址寫入至上述第一映射暫存器,使得上述第一影子區段映射至上述第一暫存器區段。
根據本發明之一實施例,上述第一暫存器區段具有一第一區段位址。上述儲存裝置更包括一第一遮罩暫存器。上述第一遮罩暫存器用以儲存上述第一區段位址,其中上述控制器更根據上述初始化指令而將上述第一區段位址寫入至上述第一遮罩暫存器。
根據本發明之一實施例,儲存裝置更包括一致能暫存器。上述致能暫存器包括一第一致能區段,其中當上述控制器根據上述初始化指令而將一第一邏輯位準寫入至上述第一致能區段時,上述第一影子區段係映射至上述第一暫存器區段,其中當上述控制器根據上述初始化指令而將一第二邏輯位準寫入至上述第一致能區段時,上述第一影子區段係停止映射至上述第一暫存器區段。
根據本發明之一實施例,當上述主機執行一寫入程序用以將一第一資料寫入至上述第一暫存器區段且上述第一致能區段係為上述第一邏輯位準時,上述主機將上述第一資料寫入至上述第一影子區段後,上述控制器再將上述第一資料自上述第一影子區段寫入至上述第一暫存器區段。當上述主機執行上述寫入程序且上述第一致能區段係為上述第二邏輯位準時,上述主機直接將上述第一資料寫入至上述第一暫存器區段。
根據本發明之一實施例,當上述主機執行一讀取程序以讀取上述第一暫存器區段且上述第一致能區段係為上述第一邏輯位準時,上述主機係讀取上述第一影子區段。當上述主機執行上述讀取程序且上述第一致能區段係為上述第二邏輯位準時,上述主機係直接讀取上述第一暫存器區段。
根據本發明之一實施例,上述儲存裝置更耦接至一第二暫存器,上述第二暫存器具有一第二位址且包括一第二暫存器區段,其中上述影子暫存器更包括一第二影子區段。上述儲存裝置更包括一第二映射暫存器。上述第二映射暫存器用以儲存上述第二位址,其中當上述控制器接收到上述初始化指令時,上述控制器更將上述第二位址寫入至上述第二映射暫存器,使得上述第二影子區段映射至上述第二暫存器區段。
根據本發明之一實施例,上述第二暫存器區段具有一第二區段位址,其中上述儲存裝置更包括一第二遮罩暫存器。上述第二遮罩暫存器用以儲存上述第二區段位址,其中當上述控制器接收到上述初始化指令時,上述控制器將上述第二區段位址寫入至上述第二遮罩暫存器。
根據本發明之一實施例,上述致能暫存器更包括一第二致能區段,其中當上述控制器將上述第一邏輯位準寫入至上述第二致能區段時,上述第二影子區段映射至上述第二暫存器區段,其中當上述控制器將上述第二邏輯位準寫入至上述第二致能區段時,上述第二影子區段停止映射至上述第二暫存器區段。
根據本發明之一實施例,當上述主機執行一寫入程序用以將一第一資料寫入至上述第一暫存器區段以及將一第二資料寫入至上述第二暫存器區段並且上述第一致能區段以及上述第二致能區段皆為上述第一邏輯位準時,上述主機將上述第一資料寫入至上述第一影子區段以及將上述第二資料寫入至上述第二影子區段後,上述控制器再將上述第一資料以及上述第二資料自上述第一影子區段以及上述第二影子區段分別寫入至上述第一暫存器區段以及上述第二暫存器區段,其中當上述主機執行上述寫入程序且上述第一致能區段以及上述第二致能區段皆為上述第二邏輯位準時,上述主機直接將上述第一資料寫入至上述第一暫存器區段以及將上述第二資料寫入至上述第二暫存器區段。
根據本發明之一實施例,當上述主機執行一讀取程序用以讀取上述第一暫存器區段之上述第一資料以及上述第二暫存器區段之上述第二資料並且上述第一致能區段以及上述第二致能區段皆為上述第一邏輯位準時,上述主機係自上述第一影子區段以及上述第二影子區段讀取上述第一資料以及上述第二資料,其中當上述主機執行上述讀取程序且上述第一致能區段以及上述第二致能區段係為上述第二邏輯位準時,上述主機係直接自上述第一暫存器區段以及上述第二暫存器區段讀取上述第一資料以及上述第二資料。
本發明更提出一種映射方法,適用於一儲存裝置,其中上述儲存裝置係耦接至一主機以及一第一暫存器,且包括一影子暫存器。上述映射方法包括:接收上述主機發出之一初始化指令;根據上述初始化指令,儲存一第一暫存器之一第一位址;以及將上述影子暫存器之一第一影子區段映射至上述第一暫存器之一第一暫存器區段。
根據本發明之一實施例,上述映射方法更包括:根據上述初始化指令,儲存上述第一暫存器區段之一第一區段位址。
根據本發明之一實施例,上述影子暫存器更包括一致能暫存器,其中上述映射方法更包括:根據上述初始化指令,將上述致能暫存器之一第一致能區段寫入一第一邏輯位準;當上述第一致能區段係為上述第一邏輯位準時,將上述第一影子區段映射至上述第一暫存器區段;以及當上述第一致能區段係為一第二邏輯位準時,停止將上述第一影子區段映射至上述第一暫存器區段。
根據本發明之一實施例,當上述主機發出一寫入指令而將一第一資料寫入至上述第一暫存器區段且上述第一致能區段係為上述第一邏輯位準時,上述主機將上述第一資料寫入至上述第一影子區段後,上述第一資料自上述第一影子區段被寫入至上述第一暫存器區段,其中當上述主機發出上述寫入指令且上述第一致能區段係為上述第二邏輯位準時,上述主機直接將上述第一資料寫入至上述第一暫存器區段。
根據本發明之一實施例,當上述主機發出一讀取指令而讀取上述第一暫存器區段且上述第一致能區段係為上述第一邏輯位準時,上述主機係讀取上述第一影子區段,其中當上述主機發出上述讀取指令且上述第一致能區段係為上述第二邏輯位準時,上述主機係直接讀取上述第一暫存器區段。
根據本發明之一實施例,上述儲存裝置更耦接至一第二暫存器,上述第二暫存器包括一第二暫存器區段,其中上述影子暫存器更包括一第二影子區段,其中上述映射方法更包括:根據上述初始化指令,儲存上述第二暫存器之一第二位址;以及將上述影子暫存器之一第二影子區段映射至上述第二暫存器區段。
根據本發明之一實施例,上述映射方法更包括:根據上述初始化指令,儲存上述第二暫存器區段之一第二區段位址。
根據本發明之一實施例,映射方法更包括:根據上述初始化指令,將上述致能暫存器之一第二致能區段寫入上述第一邏輯位準;當上述第二致能區段係為上述第一邏輯位準時,將上述第二影子區段映射至上述第二暫存器區段;以及當上述第二致能區段係為上述第二邏輯位準時,停止將上述第二影子區段映射至上述第二暫存器區段。
根據本發明之一實施例,當上述主機發出一寫入指令而將一第一資料寫入至上述第一暫存器區段以及將一第二資料寫入至上述第二暫存器區段並且上述第一致能區段以及上述第二致能區段皆為上述第一邏輯位準時,上述主機將上述第一資料寫入至上述第一影子區段以及將上述第二資料寫入至上述第二影子區段後,上述第一資料以及上述第二資料自上述第一影子區段以及上述第二影子區段分別被寫入至上述第一暫存器區段以及上述第二暫存器區段,其中當上述主機發出上述寫入指令且上述第一致能區段以及上述第二致能區段皆為上述第二邏輯位準時,上述主機直接將上述第一資料寫入至上述第一暫存器區段以及將上述第二資料寫入至上述第二暫存器區段。
根據本發明之一實施例,當上述主機發出一讀取指令而讀取上述第一暫存器區段之上述第一資料以及上述第二暫存器區段之上述第二資料並且上述第一致能區段以及上述第二致能區段皆為上述第一邏輯位準時,上述主機係自上述第一影子區段以及上述第二影子區段讀取上述第一資料以及上述第二資料,其中當上述主機發出上述讀取指令且上述第一致能區段以及上述第二致能區段係為上述第二邏輯位準時,上述主機係直接自上述第一暫存器區段以及上述第二暫存器區段讀取上述第一資料以及上述第二資料。
以下說明為本發明的實施例。其目的是要舉例說明本發明一般性的原則,不應視為本發明之限制,本發明之範圍當以申請專利範圍所界定者為準。
值得注意的是,以下所揭露的內容可提供多個用以實踐本發明之不同特點的實施例或範例。以下所述之特殊的元件範例與安排僅用以簡單扼要地闡述本發明之精神,並非用以限定本發明之範圍。此外,以下說明書可能在多個範例中重複使用相同的元件符號或文字。然而,重複使用的目的僅為了提供簡化並清楚的說明,並非用以限定多個以下所討論之實施例以及/或配置之間的關係。此外,以下說明書所述之一個特徵連接至、耦接至以及/或形成於另一特徵之上等的描述,實際可包含多個不同的實施例,包括該等特徵直接接觸,或者包含其它額外的特徵形成於該等特徵之間等等,使得該等特徵並非直接接觸。
第1圖係顯示根據本發明之一實施例所述之儲存裝置之方塊圖。如第1圖所示,儲存裝置100係耦接至主機10以及第一暫存器210以及第二暫存器220。儲存裝置100包括第一映射暫存器110、第一遮罩暫存器120、第二映射暫存器130、第二遮罩暫存器140、影子暫存器150以及控制器160。
第一暫存器210包括第一暫存器區段211,第二暫存器220包括第二暫存器區段221,其中主機10存取第一暫存器區段211以及第二暫存器區段221儲存之資料。根據本發明之其他實施例,主機10以及儲存裝置100可僅耦接至一個暫存器,或是耦接至複數個暫存器,在此僅以主機10以及儲存裝置100耦接至第一暫存器210以及第二暫存器220進行說明解釋,並非以任何形式限定於此。
影子暫存器150包括第一影子區段151以及第二影子區段152。根據本發明之一實施例,當控制器160接收到主機10發出之初始化指令INI時,控制器160將第一暫存器210之第一位址RA1儲存於第一映射暫存器110,將第一暫存器210之第一暫存器區段211之第一區段位址RS1儲存於第一遮罩暫存器120,使得第一影子區段151係映射至第一暫存器區段211。根據本發明之一實施例,第一暫存器區段211之大小可自行決定。
此外,控制器160更根據初始指令INI,將第二暫存器220之第二位址RA2儲存於第二映射暫存器130,將第二暫存器220之第二暫存器區段221之第二區段位址RS2儲存於第二遮罩暫存器140,使得第二影子區段152係映射至第二暫存器區段221。根據本發明之一實施例,第二暫存器區段221之大小可自行決定。
根據本發明之一實施例,當主機10執行寫入指令INW用以將第一資料寫入至第一暫存器區段211以及將第二資料寫入至第二暫存器區段221時,主機10將第一資料DT1以及第二資料DT2分別寫入至第一影子區段151以及第二影子區段152後,控制器160再分別將第一資料DT1以及第二資料DT2,自第一影子區段151以及第二影子區段152而同步至第一暫存器區段211以及第二暫存器區段221。
根據本發明之另一實施例,當主機10執行讀取指令INR用以讀取第一暫存器區段211之第一資料DT1及/或第二暫存器221之第二資料DT2時,由於第一影子區段151係映射至第一暫存器區段211且第二影子區段152係映射至第二暫存器區段221,主機10可直接存取影子暫存器150之第一影子區段151以及第二影子區段152而讀取第一資料DT1以及第二資料DT2。
由於控制器160接收到初始化指令INI後已將影子暫存器150映射至第一暫存器區段211以及第二暫存器區段221,使得第一資料DT1以及第二資料DT2連續儲存於影子暫存器150中,當主機10需要同時存取第一資料DT1以及第二資料DT2時,可自影子暫存器150上連續讀取第一資料DT1以及第二資料DT2或將第一資料DT1以及第二資料DT2連續寫入影子暫存器150,而無須重複指定第一暫存器210以及第二暫存器220之位址,進而增進存取效率。
如第1圖所示,儲存裝置100更包括致能暫存器170,其中致能暫存器170包括第一致能區段171以及第二致能區段172。根據本發明之一實施例,當控制器160接收到主機10發送之初始化指令INI時,控制器160將第一致能區段171及/或第二致能區段172寫入第一邏輯位準,使得第一影子區段151映射至第一暫存器區段211及/或第二影子區段152映射至第二暫存器區段221。
根據本發明之另一實施例,當控制器160將第一致能區段171以及第二致能區段172寫入第二邏輯位準時,第一影子區段151停止映射至第一暫存器區段211以及第二影子區段152停止映射至第二暫存器區段221。換句話說,當第一致能區段171以及第二致能區段172寫入第二邏輯位準時,主機10係直接存取第一暫存器210以及第二暫存器220,而不再透過儲存裝置100存取第一暫存器210以及第二暫存器220。
根據本發明之其他實施例,控制器160也可將第一致能區段171以及第二致能區段172之一者寫入第一邏輯位準,將第一致能區段171以及第二致能區段172之另一者寫入第二邏輯位準,使得影子暫存器150僅與第一暫存器210以及第二暫存器220之一者進行同步。因此,主機10係透過儲存裝置100存取第一暫存器210以及第二暫存器220之一者,並且直接存取第一暫存器210以及第二暫存器220之另一者。根據本發明之一實施例,第一邏輯位準以及第二邏輯位準係為不同。
第2圖係顯示根據本發明之一實施例所述之映射方法之流程圖。以下針對映射方法200之敘述,將搭配第1圖之方塊圖,以利詳細說明。
首先,儲存裝置100接收主機10發出之初始化指令INI(步驟S21),而將第一暫存器210之第一位址RA1儲存於第一映射暫存器110中(步驟S22),且將第一暫存器210之第一暫存器區段211之第一區段位址RS1儲存於第一遮罩暫存器120中(步驟S23)。
接著,控制器160將致能暫存器170之第一致能區段171寫入第一邏輯位準(步驟S24),並且將影子暫存器150之第一影子區段151映射至第一暫存器210之第一暫存器區段211(步驟S25)。
此外,控制器160更將第二暫存器220之第二位址RA2寫入第二映射暫存器130(步驟S26),將第二暫存器220之第二暫存器區段221之第二區段位址RS2儲存於第二遮罩暫存器140中(步驟S27),且將致能暫存器170之第二致能區段172寫入第一邏輯位準(步驟S28)。接著,控制器160將影子暫存器150之第二影子區段152映射至第二暫存器220之第二暫存器區段221(步驟S29)。
根據本發明之一實施例,當主機10發出寫入指令INW而將第一資料DT1寫入至第一暫存器區段211且第一致能區段171係為第一邏輯位準時,主機10將第一資料DT1寫入至第一影子區段151後,控制器160將第一資料DT1自第一影子區段151同步至第一暫存器區段211。根據本發明之另一實施例,當主機10發出寫入指令INW而將第一資料DT1寫入至第一暫存器區段211且第一致能區段171係為第二邏輯位準時,主機10直接將第一資料DT1寫入至第一暫存器區段211。
根據本發明之一實施例,當主機發出讀取指令INR而讀取第一暫存器區段211儲存之第一資料DT1且第一致能區段171係為第一邏輯位準時,主機10係讀取第一影子區段151。根據本發明之另一實施例,當主機10發出讀取指令INR且第一致能區段171係為第二邏輯位準時,主機10係直接讀取儲存於第一暫存器區段211之第一資料DT1。
根據本發明之一實施例,當主機10發出寫入指令INW而同時將第一資料DT1以及第二資料DT2分別寫入至第一暫存器區段211以及第二暫存器區段221並且第一致能區段171以及第二致能區段172皆為第一邏輯位準時,主機10將第一資料DT1寫入至第一影子區段151以及將第二資料DT2寫入至第二影子區段152後,控制器160再將第一資料DT1以及第二資料DT2自第一影子區段151以及第二影子區段152分別同步至第一暫存器區段211以及第二暫存器區段221。
根據本發明之另一實施例,當述主機10發出寫入指令INW而同時將第一資料DT1以及第二資料DT2分別寫入至第一暫存器區段211以及第二暫存器區段221且第一致能區段171以及第二致能區段172皆為第二邏輯位準時,主機10直接將第一資料DT1寫入至第一暫存器區段211以及將第二資料DT2寫入至第二暫存器區段221。
根據本發明之一實施例,當主機10發出讀取指令INR而讀取第一暫存器區段211儲存之第一資料DT1以及第二暫存器區段221儲存之第二資料DT2並且第一致能區段171以及第二致能區段172皆為第一邏輯位準時,主機10係自第一影子區段151以及第二影子區段152讀取第一資料DT1以及第二資料DT2。
根據本發明之另一實施例,當主機10發出讀取指令INR且第一致能區段171以及第二致能區段172係為第二邏輯位準時,主機10係直接讀取第一暫存器區段211上之第一資料DT1以及第二暫存器區段221上之第二資料DT2。
由於控制器160接收到初始化指令INI後將影子暫存器150之第一影子區段151以及第二影子區段152分別映射至第一暫存器區段211以及第二暫存器區段221,使得第一資料DT1以及第二資料DT2連續儲存於影子暫存器150中。當主機10需要同時存取第一資料DT1以及第二資料DT2時,可自影子暫存器150上連續讀取第一資料DT1以及第二資料DT2或將第一資料DT1以及第二資料DT2連續寫入影子暫存器150,而無須重複指定第一暫存器210以及第二暫存器220之位址,進而增進存取效率。
以上所述為實施例的概述特徵。所屬技術領域中具有通常知識者應可以輕而易舉地利用本發明為基礎設計或調整以實行相同的目的和/或達成此處介紹的實施例的相同優點。所屬技術領域中具有通常知識者也應了解相同的配置不應背離本創作的精神與範圍,在不背離本創作的精神與範圍下他們可做出各種改變、取代和交替。說明性的方法僅表示示範性的步驟,但這些步驟並不一定要以所表示的順序執行。可另外加入、取代、改變順序和/或消除步驟以視情況而作調整,並與所揭露的實施例精神和範圍一致。
10:主機 100:儲存裝置 110:第一映射暫存器 120:第一遮罩暫存器 130:第二映射暫存器 140:第二遮罩暫存器 150:影子暫存器 151:第一影子區段 152:第二影子區段 160:控制器 170:致能暫存器 171:第一致能區段 172:第二致能區段 210:第一暫存器 211:第一暫存器區段 220:第二暫存器 221:第二暫存器區段 INI:初始化指令 INR:讀取指令 INW:寫入指令 RA1:第一位址 RA2:第二位址 RS1:第一區段位址 RS2:第二區段位址 DT1:第一資料 DT2:第二資料 S21~S29:步驟流程
第1圖係顯示根據本發明之一實施例所述之儲存裝置之方塊圖;以及 第2圖係顯示根據本發明之一實施例所述之映射方法之流程圖。
10:主機
100:儲存裝置
110:第一映射暫存器
120:第一遮罩暫存器
130:第二映射暫存器
140:第二遮罩暫存器
150:影子暫存器
151:第一影子區段
152:第二影子區段
160:控制器
170:致能暫存器
171:第一致能區段
172:第二致能區段
210:第一暫存器
211:第一暫存器區段
220:第二暫存器
221:第二暫存器區段
INI:初始化指令
INR:讀取指令
INW:寫入指令
RA1:第一位址
RA2:第二位址
RS1:第一區段位址
RS2:第二區段位址
DT1:第一資料
DT2:第二資料

Claims (14)

  1. 一種儲存裝置,耦接至一主機以及一第一暫存器,包括:一第一映射暫存器,用以儲存上述第一暫存器之一第一位址;一影子暫存器,包括一第一影子區段,其中上述第一影子區段係映射至上述第一暫存器之一第一暫存器區段;一第一遮罩暫存器,用以儲存上述第一暫存器區段之一第一區段位址,其中上述控制器更根據上述初始化指令而將上述第一區段位址寫入至上述第一遮罩暫存器;以及一控制器,接收上述主機發出之一初始化指令而將上述第一位址寫入至上述第一映射暫存器,使得上述第一影子區段映射至上述第一暫存器區段。
  2. 如申請專利範圍第1項所述之儲存裝置,更包括:一致能暫存器,包括一第一致能區段,其中當上述控制器根據上述初始化指令而將一第一邏輯位準寫入至上述第一致能區段時,上述第一影子區段係映射至上述第一暫存器區段,其中當上述控制器根據上述初始化指令而將一第二邏輯位準寫入至上述第一致能區段時,上述第一影子區段係停止映射至上述第一暫存器區段。
  3. 如申請專利範圍第2項所述之儲存裝置,其中上述儲存裝置更耦接至一第二暫存器,上述第二暫存器具有一第二位址且包括一第二暫存器區段,其中上述影子暫存器更包括一第二影 子區段,其中上述儲存裝置更包括:一第二映射暫存器,用以儲存上述第二位址,其中當上述控制器接收到上述初始化指令時,上述控制器更將上述第二位址寫入至上述第二映射暫存器,使得上述第二影子區段映射至上述第二暫存器區段。
  4. 如申請專利範圍第3項所述之儲存裝置,其中上述第二暫存器區段具有一第二區段位址,其中上述儲存裝置更包括:一第二遮罩暫存器,用以儲存上述第二區段位址,其中當上述控制器接收到上述初始化指令時,上述控制器將上述第二區段位址寫入至上述第二遮罩暫存器。
  5. 如申請專利範圍第3項所述之儲存裝置,其中上述致能暫存器更包括一第二致能區段,其中當上述控制器將上述第一邏輯位準寫入至上述第二致能區段時,上述第二影子區段映射至上述第二暫存器區段,其中當上述控制器將上述第二邏輯位準寫入至上述第二致能區段時,上述第二影子區段停止映射至上述第二暫存器區段。
  6. 如申請專利範圍第5項所述之儲存裝置,其中當上述主機執行一寫入程序用以將一第一資料寫入至上述第一暫存器區段以及將一第二資料寫入至上述第二暫存器區段並且上述第一致能區段以及上述第二致能區段皆為上述第一邏輯位準時,上述主機將上述第一資料寫入至上述第一影子區段以及將上述第二資料寫入至上述第二影子區段後,上述控制器再將上述第一資料以及上述第二資料自上述第一影子區段以及上述第二影子區段分別寫入至上述第一暫存器區段以及上述第二暫存器區段,其 中當上述主機執行上述寫入程序且上述第一致能區段以及上述第二致能區段皆為上述第二邏輯位準時,上述主機直接將上述第一資料寫入至上述第一暫存器區段以及將上述第二資料寫入至上述第二暫存器區段。
  7. 如申請專利範圍第6項所述之儲存裝置,其中當上述主機執行一讀取程序用以讀取上述第一暫存器區段之上述第一資料以及上述第二暫存器區段之上述第二資料並且上述第一致能區段以及上述第二致能區段皆為上述第一邏輯位準時,上述主機係自上述第一影子區段以及上述第二影子區段讀取上述第一資料以及上述第二資料,其中當上述主機執行上述讀取程序且上述第一致能區段以及上述第二致能區段係為上述第二邏輯位準時,上述主機係直接自上述第一暫存器區段以及上述第二暫存器區段讀取上述第一資料以及上述第二資料。
  8. 一種映射方法,適用於一儲存裝置,其中上述儲存裝置係耦接至一主機以及一第一暫存器,且包括一影子暫存器,其中上述映射方法包括:接收上述主機發出之一初始化指令;根據上述初始化指令,儲存上述第一暫存器之一第一位址;根據上述初始化指令,儲存上述第一暫存器區段之一第一區段位址;以及將上述影子暫存器之一第一影子區段映射至上述第一暫存器之一第一暫存器區段。
  9. 如申請專利範圍第8項所述之映射方法,其中上述儲存裝置更包括一致能暫存器,其中上述映射方法更包括: 根據上述初始化指令,將上述致能暫存器之一第一致能區段寫入一第一邏輯位準;當上述第一致能區段係為上述第一邏輯位準時,將上述第一影子區段映射至上述第一暫存器區段;以及當上述第一致能區段係為一第二邏輯位準時,停止將上述第一影子區段映射至上述第一暫存器區段。
  10. 如申請專利範圍第9項所述之映射方法,其中上述儲存裝置更耦接至一第二暫存器,上述第二暫存器包括一第二暫存器區段,其中上述影子暫存器更包括一第二影子區段,其中上述映射方法更包括:根據上述初始化指令,儲存上述第二暫存器之一第二位址;以及將上述影子暫存器之一第二影子區段映射至上述第二暫存器區段。
  11. 如申請專利範圍第10項所述之映射方法,更包括:根據上述初始化指令,儲存上述第二暫存器區段之一第二區段位址。
  12. 如申請專利範圍第10項所述之映射方法,更包括:根據上述初始化指令,將上述致能暫存器之一第二致能區段寫入上述第一邏輯位準;當上述第二致能區段係為上述第一邏輯位準時,將上述第二影子區段映射至上述第二暫存器區段;以及當上述第二致能區段係為上述第二邏輯位準時,停止將上述第二影子區段映射至上述第二暫存器區段。
  13. 如申請專利範圍第12項所述之映射方法,其中當上述主機發出一寫入指令而將一第一資料寫入至上述第一暫存器區段以及將一第二資料寫入至上述第二暫存器區段並且上述第一致能區段以及上述第二致能區段皆為上述第一邏輯位準時,上述主機將上述第一資料寫入至上述第一影子區段以及將上述第二資料寫入至上述第二影子區段後,上述第一資料以及上述第二資料自上述第一影子區段以及上述第二影子區段分別被寫入至上述第一暫存器區段以及上述第二暫存器區段,其中當上述主機發出上述寫入指令且上述第一致能區段以及上述第二致能區段皆為上述第二邏輯位準時,上述主機直接將上述第一資料寫入至上述第一暫存器區段以及將上述第二資料寫入至上述第二暫存器區段。
  14. 如申請專利範圍第13項所述之映射方法,其中當上述主機發出一讀取指令而讀取上述第一暫存器區段之上述第一資料以及上述第二暫存器區段之上述第二資料並且上述第一致能區段以及上述第二致能區段皆為上述第一邏輯位準時,上述主機係自上述第一影子區段以及上述第二影子區段讀取上述第一資料以及上述第二資料,其中當上述主機發出上述讀取指令且上述第一致能區段以及上述第二致能區段係為上述第二邏輯位準時,上述主機係直接自上述第一暫存器區段以及上述第二暫存器區段讀取上述第一資料以及上述第二資料。
TW108138962A 2019-10-29 2019-10-29 儲存裝置及其映射方法 TWI716167B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW108138962A TWI716167B (zh) 2019-10-29 2019-10-29 儲存裝置及其映射方法
CN201911298678.1A CN112748955B (zh) 2019-10-29 2019-12-17 存储装置及其映射方法
US16/871,649 US11321091B2 (en) 2019-10-29 2020-05-11 Storage devices mapped to registers and mapping methods thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108138962A TWI716167B (zh) 2019-10-29 2019-10-29 儲存裝置及其映射方法

Publications (2)

Publication Number Publication Date
TWI716167B true TWI716167B (zh) 2021-01-11
TW202117546A TW202117546A (zh) 2021-05-01

Family

ID=75237420

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108138962A TWI716167B (zh) 2019-10-29 2019-10-29 儲存裝置及其映射方法

Country Status (3)

Country Link
US (1) US11321091B2 (zh)
CN (1) CN112748955B (zh)
TW (1) TWI716167B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546553A (en) * 1990-09-24 1996-08-13 Texas Instruments Incorporated Multifunctional access devices, systems and methods
US5696923A (en) * 1994-12-15 1997-12-09 Texas Instruments Incorporated Graphics processor writing to shadow register at predetermined address simultaneously with writing to control register
US5949787A (en) * 1997-09-04 1999-09-07 Exar Corporation Multi-function FIFO counter status register
US20050166036A1 (en) * 2001-06-01 2005-07-28 Microchip Technology Inc. Microcontroller instruction set
US10122386B2 (en) * 2015-12-15 2018-11-06 Nxp Usa, Inc. System and method for on-the-fly modification of the properties on an active antenna carrier in radio base station communication operation

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4853846A (en) * 1986-07-29 1989-08-01 Intel Corporation Bus expander with logic for virtualizing single cache control into dual channels with separate directories and prefetch for different processors
GB2343269A (en) * 1998-10-30 2000-05-03 Ericsson Telefon Ab L M Processing arrangements
CN101079014A (zh) * 2006-05-26 2007-11-28 联发科技股份有限公司 可为装置请求及操作主机提供的外部暂存器的方法及系统
US20100205399A1 (en) * 2009-02-12 2010-08-12 Via Technologies, Inc. Performance counter for microcode instruction execution
US8825926B2 (en) * 2009-04-13 2014-09-02 Microchip Technology Incorporated Processor with assignable general purpose register set
US8291194B2 (en) * 2009-11-16 2012-10-16 Mediatek Inc. Methods of utilizing address mapping table to manage data access of storage medium without physically accessing storage medium and related storage controllers thereof
US9431077B2 (en) * 2013-03-13 2016-08-30 Qualcomm Incorporated Dual host embedded shared device controller

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546553A (en) * 1990-09-24 1996-08-13 Texas Instruments Incorporated Multifunctional access devices, systems and methods
US5696923A (en) * 1994-12-15 1997-12-09 Texas Instruments Incorporated Graphics processor writing to shadow register at predetermined address simultaneously with writing to control register
US5949787A (en) * 1997-09-04 1999-09-07 Exar Corporation Multi-function FIFO counter status register
US20050166036A1 (en) * 2001-06-01 2005-07-28 Microchip Technology Inc. Microcontroller instruction set
US10122386B2 (en) * 2015-12-15 2018-11-06 Nxp Usa, Inc. System and method for on-the-fly modification of the properties on an active antenna carrier in radio base station communication operation

Also Published As

Publication number Publication date
US11321091B2 (en) 2022-05-03
TW202117546A (zh) 2021-05-01
CN112748955B (zh) 2023-12-08
CN112748955A (zh) 2021-05-04
US20210124584A1 (en) 2021-04-29

Similar Documents

Publication Publication Date Title
US12229051B2 (en) Memory management device for performing DMA operations between a main memory and a cache memory
US10067718B2 (en) Multi-purpose register pages for read training
KR102078562B1 (ko) 리프레쉬 어드레스 생성기 및 이를 포함하는 휘발성 메모리 장치
CN104781801A (zh) 使固态驱动器配置成采用存储模式或存储器模式操作的技术
US20190108892A1 (en) System and Method for Post-Package Repair Across DRAM Banks and Bank Groups
CN104252420B (zh) 数据写入方法及内存系统
US20190267060A1 (en) Semiconductor device
TWI716167B (zh) 儲存裝置及其映射方法
US9904622B2 (en) Control method for non-volatile memory and associated computer system
US10102125B2 (en) PCI device, interface system including the same, and computing system including the same
CN107291625A (zh) 一种用于Nand Flash的指针式逻辑地址映射表实现方法
US10331385B2 (en) Cooperative write-back cache flushing for storage devices
JP6497392B2 (ja) アクセス制御方法、バスシステム、および半導体装置
CN104765700B (zh) 半导体器件和包括半导体器件的半导体系统
JP2012226491A (ja) メモリ制御装置、集積回路、情報処理装置およびメモリ制御方法
US10261714B2 (en) Memory controller and memory system including same
CN117389914A (zh) 缓存系统、缓存写回方法、片上系统及电子设备
KR102617843B1 (ko) 메모리 시스템 및 이의 동작 방법
TWI407305B (zh) 快閃記憶體之資料存取方法以及快閃記憶體裝置
US9571081B2 (en) Strobe signal generation circuit and semiconductor apparatus using the same
TWI409816B (zh) 解決單埠靜態隨機存取記憶體之請求衝突的系統及方法
JP2009217310A (ja) メモリアクセス方法及びメモリアクセス装置
US20070121398A1 (en) Memory controller capable of handling precharge-to-precharge restrictions
TWI662413B (zh) 記憶裝置及資料讀取方法
CN106445400B (zh) 计算机系统及非挥发性存储器的控制方法