VerilogHDL基礎(chǔ)語(yǔ)法課件_第1頁(yè)
VerilogHDL基礎(chǔ)語(yǔ)法課件_第2頁(yè)
VerilogHDL基礎(chǔ)語(yǔ)法課件_第3頁(yè)
VerilogHDL基礎(chǔ)語(yǔ)法課件_第4頁(yè)
VerilogHDL基礎(chǔ)語(yǔ)法課件_第5頁(yè)
已閱讀5頁(yè),還剩46頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 Verilog HDL基礎(chǔ)語(yǔ)法第1頁(yè),共51頁(yè)。本章主要內(nèi)容Verilog HDL語(yǔ)言的特點(diǎn)Verilog HDL語(yǔ)言的描述方式模塊與端口注釋常量,變量與邏輯值操作符操作數(shù)參數(shù)編譯指令系統(tǒng)任務(wù)和函數(shù)程序?qū)嵗?頁(yè),共51頁(yè)。3.1 Verilog HDL的特點(diǎn)并行性:所謂的并行性就是說可以同時(shí)做幾件事情。Verilog語(yǔ)言不會(huì)顧及代碼順序問題,幾個(gè)代碼塊可以同時(shí)執(zhí)行;而軟件語(yǔ)言必須按順序執(zhí)行,上一句執(zhí)行不成功,就不能執(zhí)行下一句。時(shí)序性:Verilog語(yǔ)言可以用來描述過去的時(shí)間和相應(yīng)發(fā)生的事件;而軟件語(yǔ)言則做不到?;ミB:互連是硬件系統(tǒng)中的一個(gè)基本概念,Verilog語(yǔ)言中的wire變量可以很好

2、地表達(dá)這樣的功能;而軟件語(yǔ)言并沒有這樣的描述。第3頁(yè),共51頁(yè)。3.2 Verilog HDL的描述方式Verilog HDL采用三種描述方式來進(jìn)行設(shè)計(jì):數(shù)據(jù)流描述:采用assign語(yǔ)句,連續(xù)賦值,數(shù)據(jù)實(shí)時(shí)變化,賦值對(duì)象一般定義為wire型。行為級(jí)描述:使用always或者initial語(yǔ)句,過程賦值,賦值對(duì)象一般定義為reg型,不一定會(huì)形成寄存器。結(jié)構(gòu)化模型:通過實(shí)例化已有的功能模塊來建模。在一個(gè)設(shè)計(jì)中我們往往會(huì)混合使用這三種描述方式。Verilog HDL是對(duì)大小寫敏感的語(yǔ)言,同樣的詞匯,大寫和小寫是不同的符號(hào)。第4頁(yè),共51頁(yè)。圖 31 典型的Verilog設(shè)計(jì)描述示意圖第5頁(yè),共51頁(yè)

3、。3.3模塊和端口模塊是Verilog的基本描述單元,可大可小,大到一個(gè)復(fù)雜的系統(tǒng),小到一些基本的邏輯門單元,主要用來描述某個(gè)設(shè)計(jì)的功能或結(jié)構(gòu)及其與其他功能模塊通信的外部端口。對(duì)于模塊而言,需要有一個(gè)模塊名稱來標(biāo)示模塊,在端口列表的括號(hào)后面一定要以 “;”結(jié)束。模塊一般都有端口列表,端口與端口之間用 “,”隔開。但是仿真語(yǔ)言沒有端口列表,因?yàn)榉抡媸且粋€(gè)封閉的系統(tǒng),端口已經(jīng)實(shí)例化在內(nèi)部。端口聲明部分需要聲明端口的方向和位寬。第6頁(yè),共51頁(yè)。module 模塊名稱(端口列表); /端口定義聲明; input, output, inout /內(nèi)部變量及參數(shù)聲明 wire, reg, functio

4、ion, task, parameter, define, etc /模塊功能實(shí)現(xiàn) 數(shù)據(jù)流描述: assign 行為級(jí)描述:initial, always 結(jié)構(gòu)化描述: module例化 其他用戶原語(yǔ)endmodule第7頁(yè),共51頁(yè)。例 31 端口聲明/Port Declaration input 4:0 a; / 信號(hào)名為a的5輸入信號(hào) inout b; / 雙向信號(hào)b output 6:0 c; / 信號(hào)名為c的7輸出總線信號(hào)第8頁(yè),共51頁(yè)。有些設(shè)計(jì)會(huì)把端口的聲明部分和端口列表寫在一起,在端口中可以對(duì)每個(gè)信號(hào)進(jìn)行注釋。例 32 Verilog HDL 2001端口聲明module co

5、unter( input clk, /全局時(shí)鐘信號(hào) input reset_l, /全局復(fù)位信號(hào) output 7:0 cnt /八位數(shù)據(jù)總線 );第9頁(yè),共51頁(yè)。模塊內(nèi)部變量聲明中,wire型的線網(wǎng)是不具備數(shù)據(jù)存取功能的,一般而言,input的缺省定義就是wire型,output信號(hào)可以是wire型,也可以reg型。定義為wire型的線網(wǎng)是不能夠在always語(yǔ)句中被賦值的,只能被連續(xù)賦值。而reg型的則可以存取最后一次賦給它的值,定義為reg型的線網(wǎng)只能在always和initial語(yǔ)句中被賦值,不能被連續(xù)賦值。注意:所有的關(guān)鍵字都必須小寫。定義為reg型的線網(wǎng)不一定會(huì)生成寄存器。第10

6、頁(yè),共51頁(yè)。盡管信號(hào)和內(nèi)部變量定義聲明只要出現(xiàn)在被調(diào)用的語(yǔ)句之前就行,可是代碼風(fēng)格一般要求在執(zhí)行語(yǔ)句之前就定義好,這樣可以提高代碼的可讀性。在聲明后,便是功能執(zhí)行語(yǔ)句,功能執(zhí)行語(yǔ)句包括always語(yǔ)句、initial語(yǔ)句、assign語(yǔ)句、task、function、模塊例化等等??梢曰旌厦枋觯瑳]有先后順序,但是要注意的是initial語(yǔ)句只能用于仿真程序中,不能生成實(shí)際的電路。任何一個(gè)模塊都要以 “endmodule”結(jié)束。第11頁(yè),共51頁(yè)。3.4注釋Verilog HDL提供了兩種注釋的方式:一種以“/”開始,注釋的是一行中的余下部分。例 33 以“/”開始的注釋 assign a =

7、 b ? c : d; /輸出為a的兩輸入的選擇器第12頁(yè),共51頁(yè)。例 34 以/*/表示的注釋 assign a = b ? c : d; /注釋下面的功能語(yǔ)句 /*always (*) begin if(b) a=c; else a=d; end */第13頁(yè),共51頁(yè)。3.5 常量、變量與邏輯值常量就是不變的數(shù)值,比如說4d8,表示的是一個(gè)4位寬的十進(jìn)制整數(shù)8。在Verilog中,有三種不同類型的常量:整數(shù)型、實(shí)數(shù)型以及字符串型。整數(shù)型常量可以直接使用十進(jìn)制的數(shù)字表示。基數(shù)表示法的格式如下: 長(zhǎng)度+數(shù)制簡(jiǎn)寫+數(shù)字當(dāng)設(shè)定的位寬比實(shí)際數(shù)字的位寬少,則自動(dòng)截去左邊超出的位數(shù),反之則在左邊不夠

8、的位置補(bǔ)足0。如果長(zhǎng)度不顯示,那么數(shù)字的位寬則取決于本身的長(zhǎng)度。如果遇到的是x或者z時(shí),如4hx,位寬大于實(shí)際數(shù)字的位寬,這個(gè)時(shí)候在左邊不是補(bǔ)0,而是補(bǔ)x第14頁(yè),共51頁(yè)。變量分為線網(wǎng)型和寄存器型兩種。線網(wǎng)型表示電路之間的互連,沒有存取功能。它有許多子類型: wire、tri、tri0、tri1、wor、wand、trireg、supply1、supply0等等。wire可用于可綜合的邏輯設(shè)計(jì)中,而其他的一般用于仿真程序中。另外除了trireg型的變量在未初始化的狀態(tài)為x態(tài),其它時(shí)候都是z態(tài)。寄存器型表示數(shù)據(jù)的存取,在仿真器中會(huì)占據(jù)一個(gè)內(nèi)存空間。寄存器型也有許多子類型,包括reg、integ

9、er、time、real、realtime等等。用reg可以表示一位或者多位的寄存器,也可以表示存取器。第15頁(yè),共51頁(yè)。例 35 采用reg表示的寄存器和存取器reg a; /1位寄存器a reg 4:0 b; /5位寄存器b reg 7:0 c 10:1;/10*8的存取器寄存器可以按位來存取,可是存取器必須按地址來存取。一般采用for語(yǔ)句來給存取器來賦值。定義為reg型的變量可以生成寄存器,也可以生成MUX,所以需要視具體的功能執(zhí)行而定。x狀態(tài)是一種未定的狀態(tài),描述信號(hào)未被初始化的情形,在casex和casez語(yǔ)句中表示不關(guān)心。z狀態(tài)表示高阻狀況,用來表示三態(tài)建模。在真實(shí)的電子世界中以

10、及在綜合軟件中,都不會(huì)出現(xiàn)x狀態(tài),只有亞穩(wěn)態(tài)的狀況。第16頁(yè),共51頁(yè)。Verilog 的四種邏輯值0、低、偽、邏輯低、地、VSS、負(fù)插入01XZ0bufbufbufbufif11、高、真、邏輯高、電源、VDD、正插入X、不確定:邏輯沖突無法確定其邏輯值HiZ、高阻抗、三態(tài)、無驅(qū)動(dòng)源 第17頁(yè),共51頁(yè)。3.6 操作符第18頁(yè),共51頁(yè)。按位操作符是對(duì)操作數(shù)中的每一位分別進(jìn)行操作,得出一個(gè)新的操作數(shù),其具體的操作符如下所示。表 31 按位操作符操作符表達(dá)式描述B將B中的每一位取反&A & B將A中的每位與B中對(duì)應(yīng)的位相與|A | B將A中的每位與B中對(duì)應(yīng)的位相或A B將A中的每位與B中對(duì)應(yīng)的位

11、異或A B將A中的每位與B中對(duì)應(yīng)的位相異或非AB第19頁(yè),共51頁(yè)。例 36 按位操作符示例A = 4b1011 B = 4b1101 C = 4b10 x1A =4b0100 A&B =4b1001A|B =4b1111AB =4b0110AB=AB=4b1001A&C =4b10 x1第20頁(yè),共51頁(yè)。歸約操作符是一元操作符,它的表現(xiàn)方式與按位操作符相似或者相同,但是它的操作數(shù)只有一個(gè),并且是對(duì)操作數(shù)中的每一比特分別進(jìn)行操作,得出一個(gè)新的一位寬的操作數(shù)表 32 歸約操作符操作符表達(dá)式描述&B將B中的每一位相與得出一位的結(jié)果& B將B中的每個(gè)比特相與非得出一比特的結(jié)果| B將B中的每一位相

12、或得出一比特的結(jié)果| B將B中的每個(gè)比特相或非得出一比特的結(jié)果B將B中的每一位相異或非得出一比特的結(jié)果BB將B中的每一位相異或得出一比特的結(jié)果第21頁(yè),共51頁(yè)。例 37 歸約操作符示例B = 4b1101&B = 1&1&0&1 = 1b0|B = 1|1|0|1 = 1b1B = 1101 = 1b1第22頁(yè),共51頁(yè)。邏輯操作符是二元操作符,它類似于按位操作符和歸約操作符,但是又不同于它們兩者,它是對(duì)表達(dá)式中的操作數(shù)整體進(jìn)行操作,得出一個(gè)新的一位寬的操作數(shù)。邏輯操作符用于條件判斷語(yǔ)句中,而按位操作符,歸約操作符用于賦值語(yǔ)句中表 33 邏輯操作符操作符表達(dá)式描述&A&BA,B是否都為真?|

13、A | BA,B任意一個(gè)是否為真?! B是否為假第23頁(yè),共51頁(yè)。例 38 邏輯操作符示例A = 3; /參數(shù)AB = 0; /參數(shù)BC = 2b0 x; /參數(shù)CD = 2b10; /參數(shù)D A&B = 0A|B = 1!A = 0C&D = X第24頁(yè),共51頁(yè)。連接復(fù)制操作符是一類特殊的操作符,它是將兩組或者兩組以上的操作數(shù)連接成一個(gè)操作數(shù),所得結(jié)果的位寬將是所有操作數(shù)位寬之和表 34 連接復(fù)制操作符操作符表達(dá)式描述A,B將和連接起來,產(chǎn)生更大的向量BA將重復(fù)次第25頁(yè),共51頁(yè)。例 39 連接復(fù)制操作符示例A = 2b00; /參數(shù)AB = 2b10; /參數(shù)BA,B = 4b001

14、02A,3B = 10b00_0010_1010第26頁(yè),共51頁(yè)。不同操作符之間的地位不一樣,數(shù)值運(yùn)算必須遵循優(yōu)先級(jí)由高到低的順序,為了避免這樣的混淆和錯(cuò)誤,增加代碼的可讀性,最好用“( )”來區(qū)分表 35 優(yōu)先級(jí)別表操作符級(jí)別+,-, !,(一元)最高級(jí)*,/,%二元的加減+,-, , =, =, !=, !=&, &, , , , |, |&, |?:最低級(jí)第27頁(yè),共51頁(yè)。例 310 簡(jiǎn)單的操作符運(yùn)算a = 4b1000 b = 4b0111(1) !(a b) = !(TRUE) = FALSE (a b) | (a = b) = TRUE | FALSE = TRUE(2) a

15、| b = (1 | 0 | 0 | 0)|(0 | 1 | 1 | 1)= TRUE | TRUE = TRUE(3) a & b = (1 | 0 | 0 | 0)&(0 | 1 | 1 | 1)= TRUE & TRUE = TRUE(4) !a | b = !(1 | 0 | 0 | 0)|(0 | 1 | 1 | 1)= FALSE | FALSE = FALSE(5) !a & &b = !(1 | 0 | 0 | 0)& (0 | 1 | 1 | 1)= FALSE & FALSE = FALSE第28頁(yè),共51頁(yè)。3.7 操作數(shù)操作數(shù)有許多種,包括常數(shù)、參數(shù)、線網(wǎng)變量、寄存器變

16、量、向量、存取器單元以及函數(shù)的返回值等等。采用操作數(shù)進(jìn)行運(yùn)算時(shí)需要考慮操作數(shù)的極性。線網(wǎng)和一般寄存器類型是無符號(hào)的,而十進(jìn)制整數(shù)變量則有符號(hào)。當(dāng)無符號(hào)數(shù)和有符號(hào)數(shù)一起進(jìn)行運(yùn)算時(shí)需要考慮極性。第29頁(yè),共51頁(yè)。3.8 參數(shù)指令參數(shù)指令(parameter)在Verilog中是一個(gè)很重要的概念,通常出現(xiàn)在module里面。有時(shí)候在一個(gè)系統(tǒng)設(shè)計(jì)中,把所有的全局參數(shù)定義在一個(gè)文本文件中,通過include來調(diào)用。常用于定義狀態(tài)機(jī)的狀態(tài)、數(shù)據(jù)位寬、延時(shí)大小等等。全局定義變量define,它是用來進(jìn)行全局定義的,一旦定義就不能改變例 311 參數(shù)定義示例parameter CURRENT_STATE =

17、 4b1001;第30頁(yè),共51頁(yè)。3.9編譯指令Verilog語(yǔ)言采用了一些編譯指令來實(shí)現(xiàn)某些特定的編譯。它們主要有:定義宏(define、 undef)、條件編譯指令(ifdef、else、endif)、文件包含(include)、時(shí)間單位和精度定義(timescale)等等。在每個(gè)模塊前面加一個(gè)timescale編譯指令,可以確保在仿真時(shí)候延時(shí)信息按照timescale所制定的時(shí)間單位和精度進(jìn)行編譯,直到遇到下一個(gè)timescale或者resetall指令為止。timescale的格式: timescale 1ns/100ps 表示時(shí)延單位為1ns,精度為100ps 。第31頁(yè),共51頁(yè)

18、。define表示定義宏。是一個(gè)全局變量,可以被多個(gè)文件采用,直到運(yùn)到undef為止。例 312 采用define定義一個(gè)總線寬度為8的總線第32頁(yè),共51頁(yè)。條件編譯指令的格式一般如下: ifdef NORMAL parameter A = B; else parameter A =C; endif如果宏NORMAL事先已經(jīng)被定義好,則編譯器會(huì)執(zhí)行parameter A = B;語(yǔ)句,否則執(zhí)行parameter A =C;語(yǔ)句。第33頁(yè),共51頁(yè)。3.10 系統(tǒng)任務(wù)和系統(tǒng)函數(shù)顯示任務(wù)( display task)顯示任務(wù)用于信息的顯示和輸出,它將特定信息輸出到標(biāo)準(zhǔn)輸出設(shè)備,其基本語(yǔ)法結(jié)構(gòu)如下

19、:task_name (format_specification,argument_list1);表 36 顯示任務(wù)編譯指令基本信息表編譯指令類型編譯指令顯示任務(wù)編譯指令$display $displayb $displayh $displayo寫入任務(wù)編譯指令$write $writeb $writeh $writeo探測(cè)任務(wù)編譯指令$strobe $strobeb $strobeh $strobeo監(jiān)視任務(wù)編譯指令$monitor $monitorb $monitorh $monitoro第34頁(yè),共51頁(yè)。$display用來顯示變量值、字符串等信息,常用于Verilog HDL斷言,其

20、基本格式如下:$display(“At time = %t, System is OK/n”, $time);當(dāng)系統(tǒng)運(yùn)行到這個(gè)語(yǔ)句時(shí),會(huì)顯示當(dāng)時(shí)的實(shí)時(shí)時(shí)間如下(假設(shè)為50.002ns):At time = 50.002ns, System is OK第35頁(yè),共51頁(yè)。文件輸入/輸出任務(wù)(File I/O task)文件的輸入輸出任務(wù)主要分為三部分:文件的打開和關(guān)閉,文件的數(shù)據(jù)讀取以及文件的輸出。文件的打開和關(guān)閉常采用$fopen和$fclose兩個(gè)關(guān)鍵字來表示。$fopen和$fclose是一起配合使用的,表示打開一個(gè)文件和關(guān)閉一個(gè)文件,其基本格式如下:/打開一個(gè)文件integer file

21、_point = $fopen(file_name);/關(guān)閉一個(gè)文件$fclose(file_point);第36頁(yè),共51頁(yè)。打開一個(gè)文件,就需要對(duì)文件進(jìn)行操作,一般有兩種方式:一種是把監(jiān)視探測(cè)到的信息寫入文件,另外一種是從文件中讀取數(shù)據(jù),數(shù)據(jù)一般從文本文件中讀取并將數(shù)據(jù)保存到存取器中。第一種方式與顯示任務(wù)相似,它也分為顯示、寫入、探測(cè)和監(jiān)控系統(tǒng)任務(wù),只是這些任務(wù)最終會(huì)把數(shù)據(jù)顯示到文件中去,因此需要一個(gè)文件指針表 37 文件輸入指令基本信息表系統(tǒng)任務(wù)編譯指令類型系統(tǒng)任務(wù)編譯指令文件顯示任務(wù)$fdisplay $fdisplayb $fdisplayh $fdisplayo文件寫入任務(wù)$fwr

22、ite $fwriteb $fwriteh $fwriteo文件探測(cè)任務(wù)$fstrobe $fstrobeb $fstrobeh $sfstrobeo文件監(jiān)控任務(wù)$fmonitor $fmonitorb $fmonitorh $fmonitoro第37頁(yè),共51頁(yè)。$readmemb和$readmemh用來從文件中讀取數(shù)據(jù)。文本文件包含空白空間、注釋和二進(jìn)制或十六進(jìn)制數(shù)字。數(shù)字與數(shù)字之間用空白空間隔離。開始地址對(duì)應(yīng)于存取器最左邊的索引。例 313 文件的輸入輸出任務(wù)操作示例integer Data_OUT; Data_OUT = $fopen(“Data_OUT.txt”); $fdispla

23、y(Data_OUT,”At time %t, System is off/n”, $time); $fclose(Data_out);第38頁(yè),共51頁(yè)。時(shí)間標(biāo)度任務(wù)(timescale task)時(shí)間標(biāo)度任務(wù)$printtimescale用來給出指定模塊的時(shí)間單位和時(shí)間精度,基本格式如下。$printtimescale(模塊路徑);$printtimescale(模塊路徑);時(shí)間標(biāo)度任務(wù)$timeformat則用來指明%t格式定義如何報(bào)告時(shí)間信息,其基本格式如下。$timeformat(unit_number,perision,suffix,numeric_field_width);第39

24、頁(yè),共51頁(yè)。模擬控制任務(wù)(simulation control task)模擬控制任務(wù)主要有兩個(gè)系統(tǒng)任務(wù):$finish和$stop。它們之間主要的不同在于$finish是強(qiáng)迫模擬器退出,并將控制權(quán)返回給操作系統(tǒng),而$stop僅僅是模擬被掛起,模擬器不會(huì)被強(qiáng)迫退出,交互命令可以被送往模擬器。第40頁(yè),共51頁(yè)。時(shí)序驗(yàn)證任務(wù)(timing check task)時(shí)序驗(yàn)證任務(wù)主要用來檢測(cè)并報(bào)告信號(hào)的各種時(shí)序是否滿足系統(tǒng)要求,包括建立時(shí)間、保持時(shí)間、時(shí)鐘周期等。表 38 時(shí)序驗(yàn)證任務(wù)基本信息表任務(wù)類型系統(tǒng)任務(wù)實(shí)例建立時(shí)間$setup$setup(D, posedge clk, 1,0);保持時(shí)間$

25、hold$hold(posedge clk, D , 0.1);建立保持時(shí)間$setuphold$setuphold(posedge clk,D,1,0,0.1);脈寬限制$width$width(negedge clk, 0.0, 0);周期檢查$period$period(negedge clk, 1.2);偏斜$skew$skew(negedge clk, D, 0.1);時(shí)鐘與置、復(fù)位信號(hào)之間的時(shí)序約束$recovery$recovery(posedge clk,reset, 0.1);基準(zhǔn)事件區(qū)間數(shù)據(jù)變化檢測(cè)$nochange$nochange(negedge rst, dat,0,

26、0);第41頁(yè),共51頁(yè)。實(shí)數(shù)變換函數(shù)(conversion functions for real)表 39 實(shí)數(shù)變換函數(shù)基本信息表實(shí)數(shù)變換函數(shù)說明$rtoi截?cái)嘈?shù)值將實(shí)數(shù)變換為整數(shù)$itor將整數(shù)變換為實(shí)數(shù)$realtobits將實(shí)數(shù)變?yōu)?4位的實(shí)數(shù)向量表示法$bitstoreal將位模式變?yōu)閷?shí)數(shù)第42頁(yè),共51頁(yè)。概率分布函數(shù)(probabilistic distribution function)概率分布函數(shù)一般用來產(chǎn)生一系列隨機(jī)數(shù)來驗(yàn)證系統(tǒng)的功能是否正確。概率分布函數(shù)一般采用$random(seed)。根據(jù)種子變量seed的取值按32位的有符號(hào)整數(shù)形式返回一個(gè)隨機(jī)數(shù)。第43頁(yè),共51頁(yè)。3.11實(shí)例: 數(shù)據(jù)選擇器數(shù)據(jù)選擇器的功能是:根據(jù)選擇信號(hào),決定哪路輸入信號(hào)送到輸出信號(hào).輸出信號(hào)不僅與輸入信號(hào)有關(guān),還與選擇信號(hào)有關(guān),數(shù)據(jù)選擇器的Verilog HDL語(yǔ)言代碼如下:module dataselector( /模塊的開始 a, /輸入 b, /輸入 c, /輸入 d, /輸入第44頁(yè),共51頁(yè)。 sel, /輸入 en, /輸入 y /輸出 );input a;input b;input c;input d;input1:0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論