計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告江蘇大學(xué)適用于軟件工程_第1頁
計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告江蘇大學(xué)適用于軟件工程_第2頁
計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告江蘇大學(xué)適用于軟件工程_第3頁
計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告江蘇大學(xué)適用于軟件工程_第4頁
計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告江蘇大學(xué)適用于軟件工程_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、. 江蘇大學(xué) 計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告 專業(yè)名稱: 軟件工程班級學(xué)號:軟件1001 學(xué)生姓名: 張建彬指導(dǎo)教師: 楊旭東 設(shè)計(jì)時間: 2012年6月 11 日 2012年6月20日第一天 取操作數(shù)微程序的設(shè)計(jì)和調(diào)試1、 設(shè)計(jì)目標(biāo) 設(shè)計(jì)并調(diào)試取操作數(shù)的微程序 二、取操作數(shù)微流程三、測試程序、數(shù)據(jù)及運(yùn)行結(jié)果1、測試內(nèi)容:立即尋址,直接尋址運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令0000077A 5678 0010MOV #5678H,0010H運(yùn)行結(jié)果及分析:從微地址可以看出,先是取指令001->002->003->004,再是取源操作數(shù),004->00B->0

2、0F->016->006,是立即數(shù)尋址方式,再是取目的操作數(shù),006->-01B>01F->024->025->026->007,是直接尋址方式,最后是執(zhí)行階段,007->044->047->072->000,將結(jié)果mov到內(nèi)存里。2、測試內(nèi)容:立即尋址,寄存器運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令00000761 5678 MOV #5678H,R1運(yùn)行結(jié)果及分析:從微地址可以看出,先是取指令001->002->003->004,再是取源操作數(shù),004->00B->00F->01

3、6->006,是立即數(shù)尋址方式,再是取目的操作數(shù),006->018->007,是寄存器尋址方式,最后是執(zhí)行階段,007->044->046->000,將結(jié)果mov到寄存器里。由GRS可以看出最終結(jié)果由0000變成了5678。4、 設(shè)計(jì)中遇到的問題及解決辦法 才開始的時候,對軟件的應(yīng)用不是很熟悉,遇到一些麻煩,在同學(xué)的幫助下,解決了軟件應(yīng)用問題。第二天 運(yùn)算指令的微程序設(shè)計(jì)與調(diào)試1、 設(shè)計(jì)目標(biāo) 設(shè)計(jì)并調(diào)試運(yùn)算指令的微程序。二、運(yùn)算指令微程序入口地址指令助記符指 令 編 碼入口地址(H)FEDCBA9876543210MOVsrc, dst000001源地址碼目

4、的地址碼044ADDsrc, dst000010源地址碼目的地址碼048ADDCsrc, dst000011源地址碼目的地址碼04CSUB src, dst000100源地址碼目的地址碼050SUBBsrc, dst000101源地址碼目的地址碼054CMPsrc, dst000110源地址碼目的地址碼058ANDsrc, dst000111源地址碼目的地址碼05COR src, dst001000源地址碼目的地址碼060XOR src, dst001001源地址碼目的地址碼064TESTsrc, dst001010源地址碼目的地址碼068INC dst00000010001目的地址碼0A4D

5、EC dst00000010010目的地址碼0A8NOT dst00000010011目的地址碼0AC三、運(yùn)算類指令微程序微地址(H)微指令(H)微命令BMNA注釋00700000800OP4XXX指令執(zhí)行入口0489870006FTRoe, ADD, Sce, PSWce006FADD04C98B0006FTRoe,ADDC,SV,PSWce006FADDC05098F0006FTRoe,SUB,SV,PSWce006FSUB06F00000E707070存結(jié)果07068000000Soe,GRSce0000ALU運(yùn)算,結(jié)果送寄存器07160030072Soe,DRce0072結(jié)果送存儲器0

6、7200052000DRoe,ARoe,WR0000四、測試程序、數(shù)據(jù)及運(yùn)行結(jié)果1、測試內(nèi)容:ADD運(yùn)算運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令000000020761 56780B61 F000MOV #5678H,R1ADD #F000, R1運(yùn)行結(jié)果及分析: 從微地址可以看出,第一階段先是取第一條指令(MOV #5678H,R1)001->002->003->004,再是取源操作數(shù),004->00B->00F->016->006,是立即數(shù)尋址方式,再是取目的操作數(shù),006->018->007,是寄存器尋址方式,最后是執(zhí)行階段,00

7、7->044->046->000,將結(jié)果mov到寄存器里。在GRS可以看出由0000變成了5678。第二階段先是取第二條指令(ADD #F000, R1)001->002->003->004,再是取源操作數(shù),004->00B->00F->016->006,是立即數(shù)尋址方式,再是取目的操作數(shù),006->018->007,是寄存器尋址方式,最后是執(zhí)行階段,007->048->04F->070->000,是ADD運(yùn)算,結(jié)果存放在寄存器GRS中,可以看出結(jié)果為4678,并且產(chǎn)生進(jìn)位,SZOC=0001,正確

8、。五、設(shè)計(jì)中遇到的問題及解決辦法 指令的入口地址開始時沒看懂,在同學(xué)的點(diǎn)撥下明白了。再是寫微程序階段,完成微程序的輸入后,輸入時由于不太仔細(xì)有一些錯誤,經(jīng)過調(diào)試發(fā)現(xiàn)并改正了錯誤。經(jīng)過對每條運(yùn)算的測試,一些結(jié)果不對,在自己的一步一步的查找中,通過和同學(xué)的微程序的對照,一一弄懂并改正了。第三天 CPU硬件的初級設(shè)計(jì)與驗(yàn)證一、設(shè)計(jì)目標(biāo) 在運(yùn)算器實(shí)驗(yàn)的基礎(chǔ)上對硬件進(jìn)行擴(kuò)充,建立初級CPU的數(shù)據(jù)通路,構(gòu)造一個只支持運(yùn)算指令的初級CPU。二、硬件設(shè)計(jì)1、PC模塊設(shè)計(jì)(加上適當(dāng)注釋)module PC(d,q,n_reset,clk,ce,PCinc); input 15:0 d; input n_rese

9、t,clk,ce; input PCinc; output 15:0 q; reg 15:0 data;always (posedge clk or negedge n_reset) begin if (!n_reset)data = 0; else if (ce)data = d;else if(PCinc)data = data+1; endassign q = data;endmodule2、IR模塊設(shè)計(jì)module IR #(parameter DATAWIDTH=16)(input wire DATAWIDTH-1:0 d, input wire clk, input wire ce

10、, input n_reset, output reg DATAWIDTH-1:0 q);always(posedge clk or negedge n_reset) begin if (!n_reset)q = 0; else if (ce)q = d;endDR:module DR #(parameter DATAWIDTH=16)(input wire DATAWIDTH-1:0 data_IB, input wire DATAWIDTH-1:0 data_DB, input wire clk, input wire DRce_IB, input wire DRce_DB, input

11、n_reset, output reg DATAWIDTH-1:0 q);always(posedge clk or negedge n_reset) begin if(!n_reset)q=0;else if(DRce_IB)q=data_IB;else if(DRce_DB)q=data_DB; endendmodule3、頂層模塊設(shè)計(jì)(自己增加的設(shè)計(jì)部分)/TR/TR寄存器的實(shí)例化R #(DATAWIDTH) TR(.q(TR_out),.d(IB),.clk(clock),.ce(TRce),.n_reset(n_reset);buffer #(DATAWIDTH) reg_buffe

12、r(.q(IB), .d(TR_out), .oe(TRoe);/ AR/AR寄存器的實(shí)例化R #(DATAWIDTH) AR(.q(AR_out),.d(IB),.clk(clock),.ce(ARce),.n_reset(n_reset);buffer #(ADDRWIDTH) AR_AB(.q(AB), .d(AR_out), .oe(ARoe_AB);buffer #(ADDRWIDTH) AR_IB(.q(IB), .d(AR_out), .oe(ARoe_IB);/IR/IR寄存器的實(shí)例化R #(DATAWIDTH) IR(.q(IR_out),.d(IB),.clk(clock)

13、,.ce(IRce),.n_reset(n_reset);/PCPC PC(.d(IB), .q(PC_out), .n_reset(n_reset), .clk(clock), .ce(PCce), .PCinc(PCinc);buffer #(DATAWIDTH) PC_buffer(.q(IB), .d(PC_out), .oe(PCoe);/DRDR #(DATAWIDTH) DR(.q(DR_out), .data_IB(IB), .data_DB(DB), .clk(clock), .DRce_IB(DRce_IB), .DRce_DB(DRce_DB), .n_reset(n_r

14、eset);buffer #(DATAWIDTH) DR_DB(.q(DB), .d(DR_out), .oe(DRoe_DB);buffer #(DATAWIDTH) DR_IB(.q(IB), .d(DR_out), .oe(DRoe_IB);三、驗(yàn)證1、測試內(nèi)容:ADD運(yùn)算運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令000000020761 56780B61 F000MOV #5678H,R1ADD #F000, R1結(jié)果和第二天的一樣,說明硬件擴(kuò)充正確。四、設(shè)計(jì)中遇到的問題及解決辦法 在寫TR,AR,IR的實(shí)例化代碼時,沒注意是用寄存器模塊R實(shí)例化得到的,經(jīng)過報(bào)錯和仔細(xì)看書后,發(fā)現(xiàn)了問

15、題,成功改正過來了。完成程序運(yùn)行出了問題,經(jīng)過查找發(fā)現(xiàn)是DR模塊出了問題,if(!n_reset)q=0;else if(DRce_IB)q=data_IB;else if(DRce_DB)q=data_DB;這一句被我寫成了if(!n_reset)q=0;else if(DRce_IB)q=data_IB;else q=data_DB。第四天 為CPU擴(kuò)充轉(zhuǎn)移指令一、設(shè)計(jì)要求 在初級CPU的基礎(chǔ)上進(jìn)行功能擴(kuò)充,使其支持轉(zhuǎn)移類指令二、硬件uAG模塊設(shè)計(jì)(自己修改的設(shè)計(jì)部分,加上適當(dāng)注釋)3'd3:uAGout = NA8:1,BM3_uAR0; /3,根據(jù)條件轉(zhuǎn)移指令操作碼PSW的ZF

16、,OF,SF,CF狀態(tài)標(biāo)志決定微地址/第四天always(SZOC, IR) begin case(IR7:6)/ 條件轉(zhuǎn)移類指令 2'b00: Flag_MUX<=SZOC0; 2'b01: Flag_MUX<=SZOC1; 2'b10: Flag_MUX<=SZOC2; 2'b11: Flag_MUX<=SZOC3; default:Flag_MUX<=1'b0; endcase end assign BM3_uAR0 = Flag_MUX IR5;三、轉(zhuǎn)移指令微程序的設(shè)計(jì)四、測試程序、數(shù)據(jù)及運(yùn)行結(jié)果1、測試內(nèi)容:JC命

17、令 機(jī)器碼: 內(nèi)存地址(H)機(jī)器碼(H)匯編指令0000000200040761 56780B61 F000011A 0010MOV #5678H,R1ADD #F000, R1JC 0010H運(yùn)行數(shù)據(jù):運(yùn)行結(jié)果及分析:從微地址可以看出,第一階段先是取第一條指令(MOV #5678H,R1)001->002->003->004,再是取源操作數(shù),004->00B->00F->016->006,是立即數(shù)尋址方式,再是取目的操作數(shù),006->018->007,是寄存器尋址方式,最后是執(zhí)行階段,007->044->046->000

18、,將結(jié)果mov到寄存器里。在GRS可以看出由0000變成了5678。第二階段先是取第二條指令(ADD #F000, R1)001->002->003->004,再是取源操作數(shù),004->00B->00F->016->006,是立即數(shù)尋址方式,再是取目的操作數(shù),006->018->007,是寄存器尋址方式,最后是執(zhí)行階段,007->048->04F->070->000,是ADD運(yùn)算,結(jié)果存放在寄存器GRS中,可以看出結(jié)果為4678,并且產(chǎn)生進(jìn)位,SZOC=0001,正確。第三階段,進(jìn)入JC指令,因?yàn)镃=1,有進(jìn)位,所以

19、條件滿足,執(zhí)行的是075->077->000,正確。五、設(shè)計(jì)中遇到的問題及解決辦法 程序中誤將賦值符號<=寫成了=, 被同學(xué)發(fā)現(xiàn),及時修改,并成功得到解決。第五天 為CPU擴(kuò)充移位指令一、設(shè)計(jì)目標(biāo) 在前面的CPU的基礎(chǔ)上擴(kuò)充硬件,使其支持移位指令。二、硬件設(shè)計(jì)1、SHIFTER模塊設(shè)計(jì)(加上適當(dāng)注釋)wire data_lsb; wire data_hsb; /*/ */ 第五天要修改的代碼 */assign data_lsb = 1'b0 ; /assign data_hsb = 1'b0 ; mux#(1) mux_1(.d1(0),.d2(0),.d3(

20、d15),.d4(CF),.q(data_lsb),.addr(IR76); mux#(1) mux_2(.d1(d15),.d2(0),.d3(d0),.d4(CF),.q(data_hsb),.addr(IR76);/ 根據(jù)不同的移位指令,實(shí)例化兩個四選一多路器,重新形成data_lsb和data_lsb */ 多路器mux在工程文件中已提供 */ */*2、CF模塊設(shè)計(jì)timescale 1ns / 1psmodule CF(d15, d0, Cout, q, SL, SR);input d15, d0, Cout;input SL, SR;output q;reg q;always (

21、*)begincase (SL, SR)3'b01: q = d0;3'b10: q = d15;default:q = Cout;endcaseendendmodule3、IR_DECODE模塊設(shè)計(jì)(自己增加修改的設(shè)計(jì)部分)2'b00:BM4_uA<=5'b01001,IR7:5,1'b0; 4、頂層模塊設(shè)計(jì)(增加自己修改的設(shè)計(jì)部分)wire DATAWIDTH - 1: 0 SP_out, GRS_out, TR_out, A_out, ALU_out, MUX_out, PSW_out, IR_out, shifter_out, MUX2_o

22、ut, PC_out,CF_out;CF CF(.d15(ALU_out15),.d0(ALU_out0),.Cout(Cout),.q(CF_out),.SL(SL),.SR(SR); R #(DATAWIDTH) PSW(.q(PSW_out), .clk(clock),.n_reset(n_reset),.ce(PSWce),.d(12'b0,SF,ZF,OF,Cout);三、移位指令微程序的設(shè)計(jì)微地址(H)微指令(H)微指令字段(H)微命令F0F1F2F3F4F5F6F7F8F90921810006F0 6010000006FSR,PSWce0941820006F0602000

23、0006FSL,PSWce0961810006F06010000006FSR,PSWce0981820006F06020000006FSL,PSWce09A1810006F06010000006FSR,PSWce09C1820006F06010000006FSL,PSWce09E1810006F06010000006FSR,PSWce四、測試程序、數(shù)據(jù)及運(yùn)行結(jié)果1、測試內(nèi)容:SAR指令運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令0000003A 0010SAR 0010H運(yùn)行結(jié)果及分析:從微地址可以看出,第一階段先是取指令001->002->003再是取目的操作數(shù),006->

24、01B->01F->024->025->026->007,是直接尋址方式,最后是執(zhí)行階段,007->092->06F->070,執(zhí)行SAR指令。由下一條指令可以看出結(jié)果變成了03B0,為右移后的結(jié)果,正確。四、設(shè)計(jì)中遇到的問題及解決辦法 在實(shí)例化兩個四選一多路器時,給data_lsb,data_hsb初始化了,導(dǎo)致運(yùn)行結(jié)果出錯,經(jīng)過老師的指導(dǎo),改正正確。第六天 為CPU擴(kuò)充堆棧類指令一、設(shè)計(jì)目標(biāo) 在前面的CPU的基礎(chǔ)上增加堆棧,使其支持與堆棧有關(guān)的PUSH、POP、CALL、RET指令二、硬件設(shè)計(jì)1、SP模塊設(shè)計(jì)(加上適當(dāng)注釋)timescale

25、 1ns / 1psmodule SP(q,d,clk,ce,n_reset); parameter DATAWIDTH=16; output DATAWIDTH-1:0 q; input DATAWIDTH-1:0 d; input clk,ce,n_reset; reg DATAWIDTH-1:0 q;always (posedge clk or negedge n_reset)beginif (!n_reset) q =16 'h003F; /當(dāng)復(fù)位信號有效時,SP的輸出為03Felse if (ce) /當(dāng)使能信號有效時,輸出就是輸入的內(nèi)容q = d; endendmodule

26、2、頂層模塊設(shè)計(jì)(自己增加修改的設(shè)計(jì)部分)SP #(DATAWIDTH) SP(.d(IB), .q(SP_out), .clk(clock), .ce(SPce), .n_reset(n_reset);buffer #(DATAWIDTH) SP_IB(.q(IB),.d(SP_out),.oe(SPoe);三、PUSH、POP、CALL、RET指令微程序的設(shè)計(jì)PUSH(堆棧指令)微地址(H)微指令(H)微命令BMNA注釋0C0F43000C1SPoe,Ace,SV00C1取sp0C162B300C2Soe,DEC,SV,DRce00C2Sp-10C27C0800C3Soe, SPce, A

27、Rce00C3Sp-1后的地址0C300052000DRoe, ARoe, WR0000將內(nèi)容寫入sp-1所指向的內(nèi)存中POP(壓棧指令)微地址(H)微指令(H)微命令BMNA注釋0C8B00000C9ARoe, TRce00C9將目標(biāo)地址先存放在暫存器中0C9F40800CASPoe, ARce, Ace00CA取sp 0CA027610CBRD, ARoe, DRce, INC,SV00CB讀出sp所指向的內(nèi)容,sp-10CB800800CCTRoe, ARce00CC取目標(biāo)地址0CC7C052000ARoe,DRoe,WR,Soe,SPce0000將sp中的內(nèi)容寫入目標(biāo)地址CALL(子程

28、序調(diào)用指令)微地址(H)微指令(H)微命令BMNA注釋0D0F40000D1SPoe, Ace00D1棧頂單元減一,并保存原PC內(nèi)容0D1B2B000D2DEC,SV, ARoe, TRce00D20D27C0800D3Soe,ARce,SPce00D3將sp-1送入SP和AR中0D3200300D4PCoe,DRce00D4將PC內(nèi)容放入DR0D484052000ARoe,DRoe,WR,TRoe,PCce0000寫入棧頂單元RET(返回指令)微地址(H)微指令(H)微命令BMNA注釋03CF408003DSPoe, ARce, Ace003D03D0276103FRD, ARoe, DRc

29、e, INC,SV003F03FC4000040DRoe, PCce00400407C000000Soe, SPce0000四、測試程序、數(shù)據(jù)及運(yùn)行結(jié)果1、測試內(nèi)容:PUSH(堆棧指令)運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令0000031A 0004PUSH 0004H運(yùn)行結(jié)果及分析:從微地址可以看出,第一階段先是取指令001->002->003再是取目的操作數(shù),006->01B->01F->024->025->026->007,是直接尋址方式,最后是執(zhí)行階段,0C0->0C1->0C2->0C3->000,執(zhí)行PU

30、SH指令。DR中為0004H里的內(nèi)容5EE2。同時可以看出SP始終為3F。PUSH指令正確。2、測試內(nèi)容:POP(壓棧指令) 運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令0002033A 0008HPOP 0004H運(yùn)行結(jié)果及分析:從微地址可以看出,第一階段先是取指令001->002->003再是取目的操作數(shù),006->01B->01F->024->025->026->007,是直接尋址方式,最后是執(zhí)行階段,0C8->0C9->0CA->0CB->0CC->000,執(zhí)行POP指令。SP減一變?yōu)?E。在內(nèi)存中可以看出,

31、0008H中的內(nèi)容變成了0004H中的內(nèi)容5EE2。POP指令執(zhí)行正確。3、測試內(nèi)容:CALL(子程序調(diào)用指令) 運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令00000010035A 00100760 5555CALL 0010HMOV #5555,R0運(yùn)行結(jié)果及分析:從微地址可以看出,第一階段是取第一條指令(CALL 0010H),001->002->003,再是取目的操作數(shù),006->01B->01F->024->025->026->007,最后是執(zhí)行階段,007->0D0->0D1->0D2->0D3->0D4

32、->000,SP減一變?yōu)?E,PC轉(zhuǎn)到0010H;第二階段先是取第二條指令(MOV #5555H,R0)001->002->003->004,再是取源操作數(shù),004->00B->00F->016->006,是立即數(shù)尋址方式,再是取目的操作數(shù),006->018->007,是寄存器尋址方式,最后是執(zhí)行階段,007->044->046->000,將結(jié)果mov到寄存器里。在GRS可以看出由0000變成了5555。4、測試內(nèi)容:RET(返回指令)運(yùn)行數(shù)據(jù):內(nèi)存地址(H)機(jī)器碼(H)匯編指令000200120761 567800

33、02MOV #5678,R1RET運(yùn)行結(jié)果及分析: CALL執(zhí)行完后,PC跳轉(zhuǎn)到0012H,所以第一階段先是取第二條指令(RET)001->002->003,然后執(zhí)行RET,007->03C->03D->03F->040->000,SP加一變?yōu)?F,跳轉(zhuǎn)回到原PC,0002H處,進(jìn)入第二階段,先是取第一條指令(MOV #5678,R1),001->002->003,再是取源操作數(shù),004->00B->00F->016->006,是立即數(shù)尋址方式,再是取目的操作數(shù),006->018->007,是寄存器尋址方

34、式,最后是執(zhí)行階段,007->044->046->000,將結(jié)果mov到寄存器里。在GRS可以看出由0000變成了5678。 四、設(shè)計(jì)中遇到的問題及解決辦法 寫微指令時遇到許多問題,剛開始沒弄明白各條指令的意思,然后經(jīng)過同學(xué)的講解,弄懂了各個指令的意思,通過參考書籍,成功的寫出了各個指令的微程序。第七天 為CPU擴(kuò)充中斷系統(tǒng)一、設(shè)計(jì)目標(biāo) 在前面CPU的基礎(chǔ)上增加中斷系統(tǒng),使其支持鍵盤中斷。二、硬件設(shè)計(jì)1、IF(可只寫自己增加修改部分。并加上適當(dāng)注釋)if(!n_reset or cli)IF=0;else if(sti)IF=1;2、INTCif(KR)VA_out='h0020;else if(PR)VA_out='h0021;3、頂層模塊設(shè)計(jì)(自己增加修改的設(shè)計(jì)部分)/第七天:IF、INTC的實(shí)例化 *IF IF(.clk(clock), .n_reset(n_reset), .sti(STI), .cli(CLI), .IF(IF_out);INTC INTC(.KR(KR), .P

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論