版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、計算機組成原理第0011章 輸入輸出(I/O)系統(tǒng)2014 Fall 輸入輸出系統(tǒng)概述 I/O系統(tǒng)輸入輸出系統(tǒng)包括主機以外的外部設(shè)備(輸入輸出設(shè)備和輔存),以及這些設(shè)備與主機間的控制部件(控制器)。I/O系統(tǒng)I/O設(shè)備2I/O設(shè)備kI/O設(shè)備1控制器控制器控制器CPURAM主機I/O系統(tǒng)I/O系統(tǒng)的控制器 也稱為設(shè)備適配器 作用:控制并實現(xiàn)主機與外部設(shè)備間的數(shù)據(jù)傳送 實現(xiàn)數(shù)據(jù)緩沖 提供設(shè)備接口的狀態(tài) 接收主機指令來控制設(shè)備I/O系統(tǒng)的演進:分散連接(第1階段)CPU主存I/O設(shè)備 I/O設(shè)備與主存交換信息必須經(jīng)過CPU 每個I/O設(shè)備具有獨立的電路與CPU相連 I/O過程穿插在CPU工作過程
2、很難添加、更換I/O設(shè)備I/O系統(tǒng)的演進:接口模塊和DMA(第2階段)CPUI/O設(shè)備1I/O設(shè)備2接口接口I/O設(shè)備k接口主存總線結(jié)構(gòu)DMA方式(直接存儲器訪問)I/O 設(shè)備與 CPU 之間具有了一定的并行性I/O系統(tǒng)的演進:通道結(jié)構(gòu)(第3階段)CPU主存I/O設(shè)備通道通道用來負(fù)責(zé)管理I/O設(shè)備以及實現(xiàn)主存與I/O設(shè)備之間的信息交換,可以被看做是一種具有特殊功能的處理器。CPU不直接參與I/O設(shè)備與主機的信息交換。通道有專用的通道指令,但不是一個完全獨立的處理器,它必須依靠CPU的I/O指令進行啟動、停止和改變工作狀態(tài)。pDMA接口成本pDMA 挪用 CPU 的周期p多個DMA設(shè)備同時訪問
3、RAM,依然需要CPU 來控制I/O系統(tǒng)的演進:I/O處理機(第4階段) I/O 處理機又稱為外圍處理機 獨立于主機工作(這一點上有別于通道) 可以實現(xiàn) I/O 通道的功能 可以完成格式處理、數(shù)據(jù)塊檢錯等操作I/O 設(shè)備與 CPU 之間具有高度的并行性I/O 系統(tǒng)的組成I/O 軟件軟件(1) I/O 指令(2) 通道指令CPU 指令的一部分通道自身用來執(zhí)行I/O操作的指令I(lǐng)/O 硬件硬件設(shè)備+ I/O 接口模塊設(shè)備+ 設(shè)備控制器+ 通道操作碼命令碼設(shè)備碼在主機與I/O設(shè)備間傳送數(shù)據(jù);進行I/O設(shè)備的狀態(tài)測試;形成具體的操作命令,比如,讀扇區(qū)、寫扇區(qū)、找磁道等硬盤的I/O操作I/O 指令是 CP
4、U 機器指令的一部分反映 CPU 與 I/O 設(shè)備交換信息的特點操作碼:用來區(qū)分其他指令(訪存、算邏、控制指令)命令碼:體現(xiàn) I/O 設(shè)備的具體操作設(shè)備碼:I/O 設(shè)備的選擇碼(地址)操作碼命令碼設(shè)備碼通道指令 對具有通道的I/O系統(tǒng)設(shè)置的 用來指明:參與傳輸?shù)臄?shù)據(jù)在主存的首地址、末地址 指令位數(shù)較長(IBM370, 64bit),不屬于 CPU 指令集 存放在主存中,由通道從主存中取出并執(zhí)行 一旦 CPU 啟動了 I/O 設(shè)備,由通道實現(xiàn)對 I/O 設(shè)備的管理I/O 設(shè)備與主機的聯(lián)絡(luò)方式涉及的問題: I/O設(shè)備是誰?即,如何對 I/O 設(shè)備進行編址? 信息傳輸是串行還是并行(不同的接口電路)
5、? I/O 設(shè)備以何種方式與 CPU 聯(lián)系來交換各自的狀態(tài)? . .I/O 設(shè)備編址方式 統(tǒng)一編址統(tǒng)一編址 給I/O設(shè)備分配的地址占用了主存的地址空間 但 CPU 不需要額外的 I/O 指令 非統(tǒng)一編址非統(tǒng)一編址 不占用主存空間 CPU 需要使用專用的 I/O 指令(增加了復(fù)雜性)016RAM此時,0 -16 這些地址編號對應(yīng)的存儲空間不能用來存儲用戶的程序或者數(shù)據(jù)在主機眼里,I/O 設(shè)備就是一個地址,對I/O設(shè)備的訪問就是對其地址的訪問主機與 I/O 設(shè)備的聯(lián)絡(luò)方式: 了解彼此的狀態(tài) 立即響應(yīng) 當(dāng)與CPU聯(lián)系時,已處于等待狀態(tài) CPU 指令一到,立即響應(yīng),而無需特定的聯(lián)絡(luò)信號 適用于慢速 I
6、/O 設(shè)備 異步應(yīng)答信號聯(lián)絡(luò) 同步時標(biāo)聯(lián)絡(luò) I/O 與 CPU完全同步傳輸數(shù)據(jù),需要專用電路(比如,串口通信)“Ready”“Strobe”I/O 接 口I/O 設(shè) 備CPU“中間人”主機與 I/O 設(shè)備的連接方式強調(diào)物理上的連接 輻射式連接 每臺I/O設(shè)備都配有一套控制線路 不便于增刪設(shè)備 總線連接 只需一組總線 現(xiàn)代計算機采用的方式 外設(shè) 1 外設(shè) 2 外設(shè) 3主機I/O 設(shè)備與主機信息傳輸?shù)目刂品绞?控制方式: 程序查詢 程序中斷 直接存儲器訪問(DMA) I/O通道方式 I/O處理機方式計算機體系結(jié)構(gòu)的研究范疇I/O 設(shè)備與主機的傳輸控制:程序查詢方式從I/O接口中讀 一個字到CPU或
7、從CPU向主存 寫入一個字CPU向I/O發(fā) 讀指令CPU讀I/O狀態(tài)檢查狀態(tài) 完成否未準(zhǔn)備就緒是出錯已準(zhǔn)備就緒否1. CPU啟動I/O設(shè)備2. CPU不斷查詢I/O設(shè)備是否準(zhǔn)備3. 逐字傳輸(RAMI/O)4. CPU 與I/O 串行工作,效率低I/O 設(shè)備與主機的傳輸控制:程序中斷方式CPU 向 I/O 發(fā)讀指令CPU 讀 I/O 狀態(tài)檢查狀態(tài)完成否?CPU 做其他事情I/O 設(shè)備工作準(zhǔn)備就緒CPU I/O從 CPU 向主存寫入一個字CPU 主存從 I/O 接口中讀一個字到CPUI/O CPU中斷請求I/O CPU出錯是否未錯I/O 設(shè)備與主機的傳輸控制:程序中斷 CPU 啟動 I/O 設(shè)備
8、,然后繼續(xù)執(zhí)行原有程序 當(dāng) I/O 設(shè)備就緒后,向 CPU 發(fā)送中斷請求 CPU 暫停當(dāng)前程序,響應(yīng)該中斷請求 CPU 中轉(zhuǎn) I/O 與主存間的數(shù)據(jù)傳輸 傳輸任務(wù)結(jié)束后,CPU 回到原程序 CPU 與 I/O 部分時間內(nèi)并行工作,效率有所提升CPU 不再反復(fù)查看I/O設(shè)備的狀態(tài),看其是否準(zhǔn)備好,這個與程序查詢方式不同。主存與I/O設(shè)備間的數(shù)據(jù)傳輸,依然需要CPU參與,這個與程序查詢方式相同。I/O 設(shè)備與主機的傳輸控制:DMA DMA: 直接存儲器訪問方式(Direct Memory Access) 在 I/O 設(shè)備與主存交換信息時,不需要 CPU 干預(yù) 在 DMA 方式中,主存與 I/O 設(shè)
9、備之間有一條數(shù)據(jù)通路 如CPU與DMA同時訪存,CPU總是將總線占有權(quán)讓給DMA能否 I/O 設(shè)備直接與主存進行數(shù)據(jù)交換?I/O 設(shè)備與主機的傳輸控制:DMA存取周期結(jié)束CPU 執(zhí)行現(xiàn)行程序CPU 繼續(xù)執(zhí)行現(xiàn)行程序DMA請求啟動I/OI/O準(zhǔn)備I/O準(zhǔn)備一個存取周期一個存取周期1. 當(dāng)需要I/O設(shè)備傳送一批數(shù)據(jù)時,由 DMA 接口向 CPU 發(fā)一個信號,2. CPU收到該信號,放棄總線(地址、數(shù)據(jù)、控制總線)控制權(quán),3. DMA設(shè)備傳送數(shù)據(jù)4. DMA接口把總線控制權(quán)交回給CPU。由DMA控制器來實現(xiàn)I/O與主存之間的傳送輸入輸出設(shè)備I/O 設(shè)備主機 設(shè)備控制器機、電磁、光部分I/O接口I/O
10、 設(shè)備I/O 設(shè)備分類 人-機交互設(shè)備 鍵盤、鼠標(biāo)、打印機 信息存儲設(shè)備 磁盤、光盤、磁帶 網(wǎng)絡(luò)通信設(shè)備 網(wǎng)卡、調(diào)制解調(diào)器也可以按照輸入、輸出設(shè)備來進行分類鍵盤鍵盤是由一組排列成陣列形式的按鍵開關(guān)組成的,每按下一個鍵,產(chǎn)生一個相應(yīng)的字符代碼(每個按鍵的位置碼),然后將它轉(zhuǎn)換成 ASCII 碼或其他碼送主機。目前的鍵盤常用有104個鍵,除了提供通常的ASCII字符外,還有多個功能鍵、光標(biāo)控制鍵與編輯鍵等。鍵盤工作原理2 鍵盤中有一塊電路板,上面有一個微處理器。它周期性地檢查每個鍵連接的電路。通過測出電流的增減,它可知道你何時按下或釋放這個鍵。它每秒循環(huán)數(shù)百次。1 按下一個鍵,與這個鍵相連的電路中
11、的電流會發(fā)生變化。3 根據(jù)測到的鍵,微處理器生成相關(guān)的掃描碼。每個鍵有兩個碼,分別對應(yīng)按下和抬起。該碼被放入鍵盤的數(shù)據(jù)緩沖器,并進而送到一個端口。同時鍵盤向CPU發(fā)出中斷請求。CPU會暫停其它程序處理這個中斷,進入中斷服務(wù)程序。掃描儀1 將要掃描的紙正面向下放在玻璃窗上。光源從下面進行掃描。紙上顏色越淺,反光越強。2 掃描頭在電機的帶動下接收反射的光。每次為1/90000平方英寸大小。3 反射回來的光經(jīng)過一組鏡子。鏡子必須不斷轉(zhuǎn)動以便光束與鏡頭對齊。4 鏡頭將光束聚焦在光敏二極管上,轉(zhuǎn)化為電流。光強越高,電流越強。5 模/數(shù)轉(zhuǎn)換器將電流轉(zhuǎn)換為數(shù)字存儲。6 數(shù)字傳給PC,圖形軟件根據(jù)數(shù)字,產(chǎn)生圖
12、象。I/O 接口I/O接口概述I/O接口概述I/O接口主機與I/O設(shè)備之間設(shè)置的一個硬件電路及相應(yīng)的控制程序I/O 接口的作用: 實現(xiàn)設(shè)備的選擇 實現(xiàn)數(shù)據(jù)緩沖,進而達(dá)到CPU與I/O設(shè)備的速度匹配 實現(xiàn)數(shù)據(jù)串行-并行傳輸模式的轉(zhuǎn)換 實現(xiàn)電平轉(zhuǎn)換 負(fù)責(zé)傳送控制命令 反饋設(shè)備狀態(tài)總線方式連接的I/O接口設(shè)備選擇線的個數(shù)取決于I/O指令中設(shè)備碼的位數(shù)。命令線用來傳輸CPU向設(shè)備發(fā)出的指令,如啟動、清除、讀、寫等。狀態(tài)線是單向的,設(shè)備向CPU發(fā)送自身狀態(tài),如是否準(zhǔn)備就緒、是否申請中斷。I/O接口設(shè)備I/O接口數(shù)據(jù)線命令線狀態(tài)線I/O總線設(shè)備選擇線設(shè)備I/O 接口的基本組成外 部 設(shè) 備數(shù)據(jù)線命令狀態(tài)數(shù)
13、據(jù)線命令線狀態(tài)線CPU地址線 命令寄存器和命令譯碼器 設(shè)備選擇 電路 設(shè)備狀態(tài) 標(biāo)記 數(shù)據(jù)緩沖 寄存器DBR 控制邏輯電路I/O接口I/O 設(shè)備與主機的傳輸控制方式I/O 設(shè)備與主機信息傳輸?shù)目刂品绞接?? 種常用方式3程序查詢方式程序查詢方式的核心在于:CPU如果要對I/O設(shè)備進行操作,就要一直查詢 I/O 設(shè)備是否準(zhǔn)備就緒。(原地踏步原地踏步)檢查狀態(tài)標(biāo)記1 設(shè)備1 準(zhǔn)備就緒?檢查狀態(tài)標(biāo)記N 設(shè)備N準(zhǔn)備就緒?處理設(shè)備1是否否處理設(shè)備N是檢查狀態(tài)標(biāo)記交換數(shù)據(jù)準(zhǔn)備就緒?是否單個設(shè)備多個設(shè)備測試指令轉(zhuǎn)移指令傳送指令串行!程序查詢方式執(zhí)行流程啟動外設(shè)傳送一個數(shù)據(jù)修改主存地址修改計數(shù)值準(zhǔn)備好?傳送完
14、?未完是完否保護寄存器內(nèi)容設(shè)置計數(shù)器設(shè)置主存緩沖區(qū)啟動I/O結(jié)束CPU進行的準(zhǔn)備階段程序查詢方式的I/O傳輸控制需要使用CPU的寄存器CPU啟動I/O一般要傳輸一批數(shù)據(jù)主存與I/O間交換數(shù)據(jù)的存儲空間程序查詢方式的效率Quiz: CPU 的時鐘頻率為50MHz, 每一次對I/O設(shè)備的查詢操作需要100個時鐘周期。如果,CPU 每秒對鼠標(biāo)進行 30 次查詢,求:CPU 用在查詢鼠標(biāo)上的時間的比例。(假設(shè)CPU頻率為10進制表示)1 秒時間內(nèi)執(zhí)行 30 次查詢所需時間 :1 秒時間內(nèi)包含的時鐘周期數(shù):CPU 用于查詢鼠標(biāo)所用時間的比例:30 x 100 = 3000 (時鐘周期)50 x 106(
15、時鐘周期)3000/50 x 10-6 = 0.006%程序查詢方式的效率Quiz: CPU 的時鐘頻率為50MHz, 每一次對I/O設(shè)備的查詢操作需要100個時鐘周期。如果每次查詢,硬盤都以32位字長進行傳輸,系統(tǒng)要求傳輸率為1MBps。求:CPU 用在查詢硬盤上的時間的比例。 (假設(shè)CPU頻率為10進制表示)每秒需要對硬盤進行多少次查詢,才能滿足 1MBps 的吞吐率?每秒內(nèi)查詢需要的時鐘周期數(shù):對磁盤的查詢占 CPU 的時間比例:1MB/32b = 1MB/4B = 256K 次256K x 100 = 256 x 1024 x 100 = 26.2 x 106 (26.2 x 106
16、)/ (50 x 106 ) = 52.4% 程序查詢方式不適合磁盤這樣的高速設(shè)備如果要求系統(tǒng)傳輸率為 2MBps 呢?程序中斷方式中斷由 I/O 設(shè)備或其他非預(yù)期的、急需處理的事件引起的,它使 CPU 暫時停止當(dāng)前正在執(zhí)行的任務(wù),轉(zhuǎn)至另一個服務(wù)程序去處理這些事件,處理結(jié)束之后再返回原程序并繼續(xù)執(zhí)行。KK+1QQ+1中斷服務(wù)程序1中斷服務(wù)程序2入口1入口2打印機的 I/O 程序中斷方式啟動打印機命令主程序打印機準(zhǔn)備中斷請求傳送待打印數(shù)據(jù)打印PrinterCPUCPU與打印機并行工作CPU與打印機串行工作中斷源 中斷源:引起中斷的事件,即發(fā)出中斷請求的來源 中斷源的種類 外部中斷 內(nèi)部中斷 tr
17、ap 指令產(chǎn)生的軟中斷來自CPU外部的中斷,比如,I/O設(shè)備、系統(tǒng)時鐘產(chǎn)生的中斷來自CPU內(nèi)部的中斷:處理器故障、程序出錯等產(chǎn)生的中斷,比如,溫度過高,除零操作。操作系統(tǒng)處理用戶程序中的系統(tǒng)調(diào)用中斷方式的接口電路DQ&1INTR 中斷請求觸發(fā)器MASK 中斷屏蔽觸發(fā)器來自 CPU 的中斷查詢信號受設(shè)備本身控制INTR D MASKQD 完成觸發(fā)器中斷請求INTR = 1 有中斷請求MASK = 1中斷被屏蔽當(dāng)多個中斷出現(xiàn)時,CPU只能處理一個中斷,而必須屏蔽其他的。CPU 在每個指令周期結(jié)束后,查詢所有設(shè)備是否有中斷請求。只有 D=1, MASK=0 的時候,CPU 的中斷查詢信號才會
18、置 INTR = 1每個外部設(shè)備必須配置一個INTR寄存器設(shè)備準(zhǔn)備就緒,D=1中斷的優(yōu)先權(quán)中斷優(yōu)先權(quán) 所謂優(yōu)先權(quán)是指有多個中斷同時發(fā)生時,對各個中斷相應(yīng)的優(yōu)先次序。 一般來說,高速I/O設(shè)備的中斷優(yōu)先級也較高中斷的分級 把所有中斷按不同的類別分為若干級,稱為中斷級,在同一級中還可以有多個中斷源。若不能獲得及時響應(yīng)(CPU給予的中斷處理),數(shù)據(jù)可能會丟失(為什么?)。禁止中斷CPU中斷允許觸發(fā)器CPU 內(nèi)部放置一個“中斷允許”觸發(fā)器EINT = 1 : 開中斷,允許 CPU 去響應(yīng)中斷EINT = 0 : 關(guān)中斷,CPU 不響應(yīng)所有中斷當(dāng) CPU 正在處理一個中斷時,設(shè)置中斷允許觸發(fā)器為 0 ,
19、這樣,CPU 就不會同時去響應(yīng)其他中斷請求。EINT中斷屏蔽 每個中斷源(I/O設(shè)備的接口)有一個中斷屏蔽觸發(fā)器MASK 如果 CPU 置該中斷源的 MASK = 1, 不允許該中斷被響應(yīng) 有些中斷不可被屏蔽,比如,掉電,CPU 必須響應(yīng)“非屏蔽中斷”,具有最高的優(yōu)先權(quán)CPU對中斷的處理:確定中斷服務(wù)程序的地址中斷服務(wù)程序入口1如何找到中斷服務(wù)程序?中斷服務(wù)程序在哪里?硬件向量法向量地址 顯示器服務(wù)程序 打印機服務(wù)程序JMP 400JMP 300JMP 200主存主存121314200300向量地址入口地址入口地址中斷向量地址 形成部件 設(shè)備編碼器0 0 0 1 0 0 1 0INTA1 IN
20、TA2 INTAn注意:中斷向量地址不等于中斷服務(wù)程序入口地址INTA : 中斷響應(yīng)信號中斷服務(wù)程序的一般流程1. 保護現(xiàn)場。保存原來程序的斷點,保存通用寄存器的內(nèi)容,設(shè)置EINT=02. 中斷服務(wù)(設(shè)備服務(wù))。3. 恢復(fù)現(xiàn)場。數(shù)據(jù)傳輸結(jié)束后,將原程序中斷時刻的現(xiàn)場恢復(fù)4. 中斷返回。設(shè)置EINT=1,返回到原程序的斷點,CPU可以繼續(xù)執(zhí)行原程序,也可以繼續(xù)響應(yīng)后續(xù)的中斷。中斷否?保護現(xiàn)場設(shè)備服務(wù)恢復(fù)現(xiàn)場 開中斷中斷返回取指令執(zhí)行指令 中斷響應(yīng) 程序斷點進棧 關(guān)中斷 向量地址 PC是否CPU 在每個指令周期結(jié)束后,查詢所有設(shè)備是否有中斷請求。多重中斷服務(wù)程序的流程 允許中斷間的嵌套 單重中斷服務(wù)程序中,在中斷返回前才開中斷,即設(shè)置 EINT=1 多重中斷服務(wù)程序中,現(xiàn)場保護后就開中斷中斷返回保護現(xiàn)場設(shè)備服務(wù)恢復(fù)現(xiàn)場開中斷取指令執(zhí)行指令中斷否?否 中斷響應(yīng) 程序斷點進棧 關(guān)中斷向量地址 PC是DMA 方式DMA 和程序中斷兩種方式的數(shù)據(jù)通路CPU主存寄存器 中斷接口DMA 接口I/O 設(shè) 備中斷方式數(shù)據(jù)傳送通路輸入指令輸出指令DMA方式數(shù)據(jù)傳送通路DMA 方式 什么是DMA(直接存儲器訪問)方式?CPU暫時放棄對主存的控制權(quán),讓輸入輸出設(shè)備可以直接使用總線與主存交換數(shù)據(jù),數(shù)據(jù)傳送是在DMA控制器控制下進行的。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版圍欄生產(chǎn)廢水處理與排放標(biāo)準(zhǔn)合同3篇
- 二零二五版?zhèn)€人專利權(quán)抵押融資合同模板2篇
- 二零二五版股權(quán)質(zhì)押投資顧問服務(wù)合同樣本3篇
- 二零二五年藝術(shù)展廳租賃及藝術(shù)品交易服務(wù)合同3篇
- 二零二五版國際貿(mào)易實務(wù)實驗報告與國際貿(mào)易實務(wù)指導(dǎo)合同3篇
- 二零二五版電商企業(yè)內(nèi)部保密協(xié)議及商業(yè)秘密保密制度合同2篇
- 二零二五年度高校教師解聘合同3篇
- 二零二五版屋頂光伏發(fā)電與防水一體化系統(tǒng)合同3篇
- 二零二五版上市公司短期融資券發(fā)行合同3篇
- 二零二五版企業(yè)財務(wù)風(fēng)險管理體系構(gòu)建服務(wù)合同2篇
- DB-T29-74-2018天津市城市道路工程施工及驗收標(biāo)準(zhǔn)
- 小學(xué)一年級20以內(nèi)加減法混合運算3000題(已排版)
- 智慧工廠數(shù)字孿生解決方案
- 病機-基本病機 邪正盛衰講解
- 品管圈知識 課件
- 非誠不找小品臺詞
- 2024年3月江蘇省考公務(wù)員面試題(B類)及參考答案
- 患者信息保密法律法規(guī)解讀
- 老年人護理風(fēng)險防控PPT
- 充電樁采購安裝投標(biāo)方案(技術(shù)方案)
- 醫(yī)院科室考勤表
評論
0/150
提交評論