第7章Verilog設(shè)計(jì)的層次與風(fēng)格_第1頁
第7章Verilog設(shè)計(jì)的層次與風(fēng)格_第2頁
第7章Verilog設(shè)計(jì)的層次與風(fēng)格_第3頁
第7章Verilog設(shè)計(jì)的層次與風(fēng)格_第4頁
第7章Verilog設(shè)計(jì)的層次與風(fēng)格_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第7章

Verilog設(shè)計(jì)的層次與風(fēng)格主要內(nèi)容◆結(jié)構(gòu)(Structural)描述◆行為(Behavioural)描述◆數(shù)據(jù)流(DataFlow)描述◆基本組合電路設(shè)計(jì)◆基本時(shí)序電路設(shè)計(jì)Verilog設(shè)計(jì)的描述風(fēng)格

結(jié)構(gòu)(Structural)描述(4/5)行為(Behavioural)描述

數(shù)據(jù)流(DataFlow)描述7.1Verilog設(shè)計(jì)的層次VerilogHDL是一種能夠在多個(gè)層級(jí)對(duì)數(shù)字系統(tǒng)進(jìn)行描述的語言,VerilogHDL模型可以是實(shí)際電路不同級(jí)別的抽象。這些抽象級(jí)別可分為5級(jí)。(1)系統(tǒng)級(jí)(SystemLevel)(2)算法級(jí)(AlgorithmLevel)(3)寄存器傳輸級(jí)(RTL,RegisterTransferLevel)(4)門級(jí)(GateLevel)(5)開關(guān)級(jí)(SwitchLevel)-基于晶體管的設(shè)計(jì)層次高級(jí)別結(jié)構(gòu)描述是調(diào)用電路元件來構(gòu)建電路:在Verilog程序中可通過如下方式描述電路的結(jié)構(gòu)◆調(diào)用Verilog內(nèi)置門元件(門級(jí)結(jié)構(gòu)描述)◆調(diào)用開關(guān)級(jí)元件(晶體管級(jí)結(jié)構(gòu)描述)◆用戶自定義元件UDP(也在門級(jí))-Chapter11◆多層次結(jié)構(gòu)電路的設(shè)計(jì)中,不同模塊間的調(diào)用也屬結(jié)構(gòu)描述-7.67.2結(jié)構(gòu)(Structural)描述

Verilog的內(nèi)置門元件其真值表見P168

門元件的調(diào)用調(diào)用門元件的格式為:門元件名字<例化的門名字>(<端口列表>)其中普通門的端口列表按下面的順序列出:(輸出,輸入1,輸入2,輸入3……);比如:anda1(out,in1,in2,in3); //三輸入與門對(duì)于三態(tài)門,則按如下順序列出輸入輸出端口:(輸出,輸入,使能控制端);比如:bufif1mytri1(out,in,enable); //高電平使能的三態(tài)門門元件的調(diào)用對(duì)于buf和not兩種元件的調(diào)用,需注意的是:它們?cè)试S有多個(gè)輸出,但只能有一個(gè)輸入。比如:

notN1(out1,out2,in); //1個(gè)輸入in,2個(gè)輸出out1,out2bufB1(out1,out2,out3,in); //1個(gè)輸入in,3個(gè)輸出out1,out2,out3【例7.1】調(diào)用門元件實(shí)現(xiàn)的4選1MUXmodulemux4_1a(out,in1,in2,in3,in4,s0,s1);inputin1,in2,in3,in4,s0,s1;outputout;wires0_n,s1_n,w,x,y,z;not(s0_n,s0),(s1_n,s1);and(w,in1,s0_n,s1_n),(x,in2,s0_n,s1), (y,in3,s0,s1_n),(z,in4,s0,s1);or(out,w,x,y,z);endmodule用基本門實(shí)現(xiàn)的4選1MUX原理圖7.3行為描述

就是對(duì)設(shè)計(jì)實(shí)體的數(shù)學(xué)模型的描述,其抽象程度遠(yuǎn)高于結(jié)構(gòu)描述方式。行為描述類似于高級(jí)編程語言,當(dāng)描述一個(gè)設(shè)計(jì)實(shí)體的行為時(shí),無需知道具體電路的結(jié)構(gòu),只需要描述清楚輸入與輸出信號(hào)的行為,而不需要花費(fèi)更多的精力關(guān)注設(shè)計(jì)功能的門級(jí)實(shí)現(xiàn)?!纠?.2】用case語句描述的4選1MUXmodulemux4_1b(out,in1,in2,in3,in4,s0,s1);inputin1,in2,in3,in4,s0,s1;outputregout;always@(*) //使用通配符case({s0,s1})2'b00:out=in1;2'b01:out=in2;2'b10:out=in3;2'b11:out=in4;default:out=2'bx;endcaseendmoduleP111例4.12【例7.3】4位二進(jìn)制加法計(jì)數(shù)器modulecount4(out,clr,clk);inputclr,clk;outputreg[3:0]out;always@(posedgeclkorposedgeclr)beginif(clr) out<=0;//異步清零else out<=out+1; //計(jì)數(shù)endendmodule采用行為描述方式時(shí)需注意用行為描述模式設(shè)計(jì)電路,可以降低設(shè)計(jì)難度。行為描述只需表示輸入與輸出之間的關(guān)系,不需要包含任何結(jié)構(gòu)方面的信息。設(shè)計(jì)者只需寫出源程序,而挑選電路方案的工作由EDA軟件自動(dòng)完成。在電路的規(guī)模較大或者需要描述復(fù)雜的邏輯關(guān)系時(shí),應(yīng)首先考慮用行為描述方式設(shè)計(jì)電路,如果設(shè)計(jì)的結(jié)果不能滿足資源占有率的要求,則應(yīng)改變描述方式。7.4數(shù)據(jù)流描述

數(shù)據(jù)流描述方式主要使用持續(xù)賦值語句,多用于描述組合邏輯電路,其格式為:

assignLHS_net=RHS_expression;右邊表達(dá)式中的操作數(shù)無論何時(shí)發(fā)生變化,都會(huì)引起表達(dá)式值的重新計(jì)算,并將重新計(jì)算后的值賦予左邊表達(dá)式的net型變量?!纠?.4】數(shù)據(jù)流描述的4選1MUXmodulemux4_1c(out,in1,in2,in3,in4,s0,s1);inputin1,in2,in3,in4,s0,s1;outputout;assignout=(in1&~s0&~s1)|(in2&~s0&s1)|(in3&s0&~s1)|(in4&s0&s1);endmodule

數(shù)據(jù)流描述

用數(shù)據(jù)流描述方式設(shè)計(jì)電路與用傳統(tǒng)的邏輯方程設(shè)計(jì)電路很相似。設(shè)計(jì)中只要有了布爾代數(shù)表達(dá)式就很容易將它用數(shù)據(jù)流方式表達(dá)出來。表達(dá)方法是用Verilog中的邏輯運(yùn)算符置換布爾邏輯運(yùn)算符即可。比如,如果邏輯表達(dá)式為:,則用數(shù)據(jù)流方式描述為:assignF=(a&b)|(~(c&d))。7.5不同描述風(fēng)格的設(shè)計(jì)

對(duì)設(shè)計(jì)者而言,采用的描述級(jí)別越高,設(shè)計(jì)越容易;對(duì)綜合器而言,行為級(jí)的描述為綜合器的優(yōu)化提供了更大的空間,較之門級(jí)結(jié)構(gòu)描述更能發(fā)揮綜合器的性能,所以在電路設(shè)計(jì)中,除非一些關(guān)鍵路徑的設(shè)計(jì)采用門級(jí)結(jié)構(gòu)描述外,一般更多地采用行為建模方式。

【例7.12】調(diào)用門元件實(shí)現(xiàn)的1位全加器

modulefull_add1(a,b,cin,sum,cout);inputa,b,cin;outputsum,cout;wires1,m1,m2,m3;and(m1,a,b),(m2,b,cin),(m3,a,cin);xor(s1,a,b),(sum,s1,cin);or(cout,m1,m2,m3);endmodule【例7.13】數(shù)據(jù)流描述的1位全加器modulefull_add2(a,b,cin,sum,cout);inputa,b,cin;outputsum,cout;assignsum=a^b^cin;assigncout=(a&b)|(b&cin)|(cin&a);endmodule3、行為描述的1位全加器【例7.14】行為描述的1位全加器modulefull_add3(a,b,cin,sum,cout);inputa,b,cin;outputregsum,cout;always@*

//或?qū)憺閍lways@(aorborcin)begin{cout,sum}=a+b+cin;endendmodule4、采用層次化方式設(shè)計(jì)1位全加器兩個(gè)半加器構(gòu)成一個(gè)全加器:半加器為底層模塊,全加器為頂層模塊,在頂層模塊中調(diào)用底層模塊(模塊例化)來構(gòu)成整個(gè)系統(tǒng),類似在原理圖設(shè)計(jì)中調(diào)用元器件?!纠?.15】用模塊例化方式設(shè)計(jì)的1位全加器頂層設(shè)計(jì)modulefull_add(ain,bin,cin,sum,cout);inputain,bin,cin;outputsum,cout;wired,e,f; //用于內(nèi)部連接的節(jié)點(diǎn)信號(hào)half_addu1(ain,bin,e,d); //半加器模塊調(diào)用,采用位置關(guān)聯(lián)方式half_addu2(e,cin,sum,f);oru3(cout,d,f); //或門調(diào)用endmodule【例7.16】半加器定義modulehalf_add(a,b,so,co);inputa,b;outputso,co;assignco=a&b;assignso=a^b;endmodule4位加法器設(shè)計(jì)moduleadd4_1(sum,cout,a,b,cin);output[3:0]sum;outputcout;input[3:0]a,b;inputcin;

/*級(jí)連描述,full_add1源代碼見例7.12*/full_add1f0(a[0],b[0],cin,sum[0],cin1);full_add1f1(a[1],b[1],cin1,sum[1],cin2);full_add1f2(a[2],b[2],cin2,sum[2],cin3);full_add1f3(a[3],b[3],cin3,sum[3],cout);endmodule結(jié)構(gòu)描述的4位級(jí)連全加器【例7.18】數(shù)據(jù)流描述的4位加法器moduleadd4_2(cout,sum,a,b,cin);inputcin;input[3:0]a,b;output[3:0]sum;outputcout;assign{cout,sum}=a+b+cin;endmodule7.6多層次結(jié)構(gòu)電路的設(shè)計(jì)如果數(shù)字系統(tǒng)比較復(fù)雜,可采用“Top-down”的方法進(jìn)行設(shè)計(jì)。首先把系統(tǒng)分為幾個(gè)模塊,每個(gè)模塊再分為幾個(gè)子模塊,以此類推,直到易于實(shí)現(xiàn)為止。這種“Top-down”的方法能夠把復(fù)雜的設(shè)計(jì)分解為許多簡(jiǎn)單的邏輯來實(shí)現(xiàn),同時(shí)也適合于多人進(jìn)行分工合作,如同用C語言編寫大型軟件一樣。Verilog語言能夠很好地支持這種“Top-down”的設(shè)計(jì)方法。

1.2.1Top-down設(shè)計(jì)舉例:

數(shù)字頻率計(jì)組成原理框圖Moduleplj(clk,rst,signal,out);7.6多層次結(jié)構(gòu)電路的設(shè)計(jì)多層次結(jié)構(gòu)電路的描述既可以采用文本方式,也可以用圖形和文本混合設(shè)計(jì)的方式。用一個(gè)8位累加器的設(shè)計(jì)為例來說明這兩種設(shè)計(jì)方式。1.圖形與文本混合設(shè)計(jì)

8位全加器moduleadd8(sum,cout,b,a,cin);output[7:0]sum;outputcout;input[7:0]a,b;inputcin;assign{cout,sum}=a+b+cin;endmodule8位寄存器modulereg8(qout,in,clk,clear);output[7:0]qout;input[7:0]in;inputclk,clear;reg[7:0]qout;always@(posedgeclkorposedgeclear)beginif(clear)qout<=0; //異步清0elseqout<=in;endendmodule將設(shè)計(jì)項(xiàng)目設(shè)置成可調(diào)用的元件將所需元件全部調(diào)入原理圖編輯窗并連接好

頂層acc.bdfadd8.bsfreg8.bsf底層

add8.vreg8.v

2.文本設(shè)計(jì)moduleacc(accout,cout,accin,cin,clk,clear);output[7:0]accout;outputcout;input[7:0]accin;inputcin,clk,clear;wire[7:0]sum;add8accadd8(sum,cout,accout,accin,cin); //調(diào)用add8子模塊reg8accreg8(accout,sum,clk,clear); //調(diào)用reg8子模塊endmodule累加器頂層文本描述對(duì)于上面的模塊調(diào)用,可采用位置對(duì)應(yīng)的方式,即調(diào)用時(shí)模塊端口列表中信號(hào)的排列順序與模塊定義時(shí)端口列表中的信號(hào)排列順序相同;也可以采用信號(hào)名對(duì)應(yīng)方式,此時(shí)不必按順序,例如上面對(duì)reg8的調(diào)用:modulereg8(qout,in,clk,clear); //reg8的模塊聲明—底層reg8accreg8(accout,sum,clk,clear); //調(diào)用方式1,位置對(duì)應(yīng)—頂層reg8accreg8(.qout(accout),.clear(clear),.in(sum),.clk(clk)); //調(diào)用方式2,信號(hào)名對(duì)應(yīng)—頂層模塊調(diào)用-和所用的綜合器有關(guān)2.文本設(shè)計(jì)-模塊調(diào)用的指定方式(1)文件復(fù)制方式:將add8和reg8的代碼復(fù)制到acc.v中,在綜合時(shí)指明頂層模塊。

moduleacc(accout,cout,accin,cin,clk,clear);output[7:0]accout;outputcout;input[7:0]accin;inputcin,clk,clear;wire[7:0]sum;add8accadd8(sum,cout,accout,accin,cin); //調(diào)用add8子模塊reg8accreg8(accout,sum,clk,clear); //調(diào)用reg8子模塊endmodule

moduleadd8(sum,cout,b,a,cin);output[7:0]sum;outputcout;input[7:0]a,b;inputcin;assign{cout,sum}=a+b+cin;endmodule………………2.文本設(shè)計(jì)-模塊調(diào)用的指定方式(2)庫管理方式7.7基本組合電路(CombinationalLogicCircuit)設(shè)計(jì)門級(jí)結(jié)構(gòu)描述

modulegate1(F,A,B,C,D);inputA,B,C,D;outputF;nand(F1,A,B);//調(diào)用門元件and(F2,B,C,D);or(F,F1,F2);endmodule數(shù)據(jù)流描述modulegate2(F,A,B,C,D);inputA,B,C,D;outputF;assignF=(~(A&B))|(B&C&D);endmodule1、3-8譯碼器(Decoder)【例7.24】74138的Verilog描述modulettl74138(a,y,g1,g2a,g2b);input[2:0]a;inputg1,g2a,g2b;outputreg[7:0]y;always@(*)beginif(g1&~g2a&~g2b) //只有當(dāng)g1、g2a、g2b為100時(shí),譯碼器使能begincase(a)3'b000:y=8'b11111110; //譯碼輸出3'b001:y=8'b11111101;3'b010:y=8'b11111011;3'b011:y=8'b11110111;3'b100:y=8'b11101111;3'b101:y=8'b11011111;3'b110:y=8'b10111111;3'b111:y=8'b01111111;default:y=8'b11111111;endcaseendelsey=8'b11111111;endendmodule3-8譯碼器(Decoder)Maxplus2庫—74138Primitives(原語)庫

緩沖器buffer

邏輯門logic--nand

其他功能other—gnd,vcc

引腳pin—input,output

存儲(chǔ)單元storage2、8-3(PriorityEncoder)【例7.25】8線—3線優(yōu)先編碼器74148的Verilog描述modulettl74148(din,ei,gs,eo,dout);input[7:0]din;inputei;outputreggs,eo;outputreg[2:0]dout;always@(ei,din)beginif(ei)begindout<=3'b111;gs<=1'b1;eo<=1'b1;endelseif(din==8'b111111111)begindout<=3'b111;gs<=1'b1;eo<=1'b0;endelseif(!din[7])begindout<=3'b000;gs<=1'b0;eo<=1'b1;endelseif(!din[6])begindout<=3'b001;gs<=1'b0;eo<=1'b1;endelseif(!din[5])begindout<=3'b010;gs<=1'b0;eo<=1'b1;endelseif(!din[4])begindout<=3'b011;gs<=1'b0;eo<=1'b1;endelseif(!din[3])begindout<=3'b100;gs<=1'b0;eo<=1'b1;endelseif(!din[2])begindout<=3'b101;gs<=1'b0;eo<=1'b1;endelseif(!din[1])begindout<=3'b110;gs<=1'b0;eo<=1'b1;endelsebegindout<=3'b111;gs<=1'b0;eo<=1'b1;endendendmodule2、8-3(PriorityEncoder)【例7.26】用函數(shù)定義的8線—3線優(yōu)先編碼器74148的Verilog描述modulecoder83(din,dout);input[7:0]din;output[2:0]dout;function[2:0]code;//函數(shù)定義input[7:0]din;//函數(shù)只有輸入端口,輸出為函數(shù)名本身if(din[7])code=3'd7;elseif(din[6])code=3'd6;elseif(din[5])code=3'd5;elseif(din[4])code=3'd4;elseif(din[3])code=3'd3;elseif(din[2])code=3'd2;elseif(din[1])code=3'd1;elsecode=3'd0;endfunctionassigndout=code(din);//函數(shù)調(diào)用endmodule在使用函數(shù)時(shí),需注意1、函數(shù)的定義與調(diào)用須在一個(gè)module模塊內(nèi)。

2、函數(shù)只允許有輸入變量且必須至少有一個(gè)輸入變量,輸出變量由函數(shù)名本身擔(dān)任,在定義函數(shù)時(shí),需對(duì)函數(shù)名說明其類型和位寬。

3、定義函數(shù)時(shí),沒有端口名列表,但調(diào)用函數(shù)時(shí),需列出端口名列表,端口名的排序和類型必須與定義時(shí)的相一致。這一點(diǎn)與任務(wù)相同

4、函數(shù)可以出現(xiàn)在持續(xù)賦值assign的右端表達(dá)式中。

5、函數(shù)不能調(diào)用任務(wù),而任務(wù)可以調(diào)用別的任務(wù)和函數(shù),且調(diào)用任務(wù)和函數(shù)個(gè)數(shù)不受限制。3、奇偶校驗(yàn)(ParityCheck)位產(chǎn)生器【例7.27】奇偶校驗(yàn)位產(chǎn)生器moduleparity(even_bit,odd_bit,a);input[7:0]a;outputeven_bit,odd_bit;assigneven_bit=^a; //生成偶校驗(yàn)位assignodd_bit=~even_bit; //生成奇校驗(yàn)位endmodule7.8

基本時(shí)序電路設(shè)計(jì)【例7.29】帶異步清0/異步置1的JK觸發(fā)器modulejkff_rs(clk,j,k,q,rs,set);inputclk,j,k,set,rs;outputregq;always@(posedgeclk,negedgers,negedgeset)beginif(!rs)q<=1'b0;elseif(!set)q<=1'b1;elsecase({j,k})2'b00:q<=q;2'b01:q<=1'b0;2'b10:q<=1'b1;2'b11:q<=~q;default:q<=1'bx;endcaseendendmodule鎖存器(latch)【例7.30】電平敏感的1位數(shù)據(jù)鎖存器modulelatch1(q,d,le);inputd,le;outputq;assignq=le?d:q; //le為高電平時(shí),將輸入端數(shù)據(jù)鎖存endmodule鎖存器(latch)【例7.31】帶置位/復(fù)位端的1位數(shù)據(jù)鎖存器modulelatch2(q,d,le,set,reset);inputd,le,set,reset;outputq;assignq=reset?0:(set?1:(le?d:q));endmodule鎖存器(latch)【例7.32】8位數(shù)據(jù)鎖存器(74LS373)modulettl373(le,oe,q,d);inputle,oe;input[7:0]d;outputreg[7:0]q;always@* //或?qū)憺閍lways@(le,oe,d)beginif(~oe&le)q<=d; //或?qū)憺閕f((!oe)&&(le))elseq<=8'bz;endendmodule3.4.6

存儲(chǔ)器模塊(storage)P89參數(shù)化鎖存器lpm_latch數(shù)據(jù)寄存器(register)【例7.33】數(shù)據(jù)寄存器modulereg_w(dout,din,clk,clr);parameterWIDTH=7;inputclk,clr;input[WIDTH:0]din;outputreg[WIDTH:0]dout;always@(posedgeclk,posedgeclr)beginif(clr)dout<=0;elsedout<=din;endendmodule數(shù)據(jù)鎖存器與數(shù)據(jù)寄存器-P183數(shù)據(jù)鎖存器(latch)與數(shù)據(jù)寄存器(register)的區(qū)別:(1)Latch:一般由電平信號(hào)控制,屬于電平敏感型;Register:一般由時(shí)鐘信號(hào)控制,屬于邊沿敏感型。(2)有不同的使用場(chǎng)合,主要取決于控制方式及控制信號(hào)和數(shù)據(jù)信號(hào)之間的時(shí)序關(guān)系:若數(shù)據(jù)有效滯后于控制信號(hào)有效,則只能用鎖存器;若數(shù)據(jù)提前于控制信號(hào),并要求同步操作,則可以選擇寄存器來存放數(shù)據(jù)。8位移位寄存器-P183【例7.34】8位移位寄存器moduleshift8(dout,din,clk,clr);inputclk,clr,din;outputreg[7:0]dout;always@(posedgeclk)beginif(clr)dout<=8‘b0;//同步清0,高電平有效elsebegindout<=dout<<1;//輸出信號(hào)左移一位

dout[0]<=din;//輸入信號(hào)補(bǔ)充到輸出信號(hào)的最低位

endendendmodule計(jì)數(shù)器【例7.35】可變模加法/減法計(jì)數(shù)器moduleupdown_count(d,clk,clear,load,up_down,qd);inputclk,clear,load,up_down;input[7:0]d;output[7:0]qd;reg[7:0]cnt;assignqd=cnt;always@(posedgeclk)beginif(!clear) cnt<=8'h00; //同步清0,低電平有效elseif(load) cnt<=d; //同步預(yù)置elseif(up_down) cnt<=cnt+1; //加法計(jì)數(shù)else cnt<=cnt-1; //減法計(jì)數(shù)endendmodule7.9三態(tài)邏輯設(shè)計(jì)

【例7.39】行為描述的三態(tài)門moduletristate1(in,en,out);inputin,en;outputregout;always@(inoren)beginif(en)out<=in;elseout<=1'bz;endendmodule【例7.40】調(diào)用門元件bufif1描述的三態(tài)門moduletristate2(in,en,out);inputin,en;outputout;triout;bufif1b1(out,in,en); //注意三態(tài)門端口的排列順序endmodule【例7.41】數(shù)據(jù)流描述的三態(tài)門moduletristate3(out,in,en);inputin,en;outputout;assignout=en?in:1‘bz; //若en=1,out=in; //若en=0,out為高阻態(tài)endmodule【例7.42】三態(tài)雙向驅(qū)動(dòng)器modulebidir(y,a,en,b);inputa,en;outputb;inouty;assigny=en?a:'bz;assignb=y;endmodule【例7.44】三態(tài)雙向總線緩沖器modulettl245(a,b,oe,dir);inputoe,dir; //使能信號(hào)和方向控制inout[7:0]a,b; //雙向數(shù)據(jù)線assigna=({oe,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論