Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
vlsi:computing_doc [22/04/2013 02:02]
pacher
— (versione attuale)
Linea 1: Linea 1:
  
-====== Help and documentation ====== 
- 
-[ __[[vlsi:​home|Home]]__ ] 
-[ __[[vlsi:​workbook|VLSI Design WorkBook]]__ ] 
-[ __[[vlsi:​computing_main#​contents|Back to index]]__ ] 
- 
- 
- 
-== Contents == 
- 
-   * [[vlsi:​computing_doc#​introduction|Introduction]] 
-   * [[vlsi:​computing_doc#​cadence_documentation|Cadence documentation]] FIXME 
-   * [[vlsi:​computing_doc#​mentor_graphics_documentation|Mentor Graphics documentation]] 
-   * [[vlsi:​computing_doc#​synopsys_documentation|Synopsys documentation]] 
-   * [[vlsi:​computing_doc#​pdk_documentation|PDK documentation]] 
-   * [[vlsi:​computing_doc#​confidentiality_of_tools_and_technology_information|Confidentiality of tools and technology information]] 
-   * [[vlsi:​computing_doc#​build_your_own_documentation_repositories|Build your own documentation repositories]] 
-   * [[vlsi:​computing_doc#​command_line_help_switches|Command line help switches]] 
-   * [[vlsi:​computing_doc#​web_resources|Web resources]] 
-   * [[vlsi:​computing_doc#​reference_books|Reference books]] 
- 
- 
-**Keywords:​** 
- 
-===== Introduction ===== 
- 
-Help and documentation play a central role in the design activity. 
-EDA tools are generally very complex and setting them up and utilizing them effectively ​ 
-can be less-than-intuitive and time consuming without adequate help and documentation. ​ 
-Furthermore,​ exhaustive documentation is of primary importance to succesfully work with  
-a specific fabrication technology. 
- 
-Much of the documentation about various design platforms that can be found browsing ​ 
-the Web is in form of tutorials and HowTo'​s rather than detailed manuals, often not  
-completely up-to-date with the latest package releases and simulation tools. ​ 
-As a matter of fact the most important source of documentation is offered by the tools themselves. ​ 
-Each design platform as well as stand-alone tools offer a huge amount of documentation which comes  
-with the standard installation,​ usually in form of  
-**html** and **pdf** files. This documentation should be the first source of reference whenever ​ 
-you have a question that is not answered inside these Wiki pages. ​ 
-Please, keep in mind that such kind of information is **proprietary** and **confidential**, ​ 
-as discussed below. ​ 
- 
-In this chapter we describe //where// you can find the documentation and how to use it, 
-aware that new users may fear seeking help from the other experienced designers, professors and  
-professional researchers,​ with the result that too often the time is just wasted reinventing ​ 
-the wheel. Even a simple pdf page can be hard to find! 
- 
- 
- 
-===== Cadence documentation ===== 
- 
-The most part of the design tools licensed by INFN for the VLSI laboratory comes  
-from [[http://​www.cadence.com/​|Cadence Design Systems]]. 
-Actually, tens of different tools for analog, mixed-mode and digital IC design ​ 
-are grouped into various **design platforms** (also called **packages**), ​ 
-providing unified front-to-back design environments. ​ 
-Due to the complexity of such platforms, Cadence offers extensive documentation ​ 
-for these tools and each collection of tools comes with its own documentation. 
- 
-Cadence packages are installed under ''/​usr/​cadence/''​ on the VLSI computing cluster, ​ 
-which is a symbolic link to ''/​export/​elt59xl/​disk0/​cadence/''​ on the elt59xl server machine. ​ 
-The documentation which comes with a package can be found inside the top installation ​ 
-directory, usually in ''/​usr/​cadence/<​package>/​doc/''​ (e.g. ''/​usr/​cadence/​IC_6.1.5/​doc/'' ​ 
-for Cadence IC 6.1.5). Documents are provided both in form of html pages  
-and pdf files, in particular you can find one sub directory for each document ​ 
-inside a ''/​usr/​cadence/<​package>/​doc/''​ directory. That is, each sub directory contains ​ 
-the html sources and a single pdf version of a specific document. ​ 
-Unfortunately these documents have short and quite cryptic file names, requiring that  ​ 
-you gain a little experience in guessing the content. 
- 
- 
-FIXME  
-[tmp]\\ 
-The html files are used by the Cadence **Web-based** help system, accessible through ​ 
-simple graphical interfaces. Help and documentation for Cadence applications are available ​ 
-'​on-fly',​ because every window that opens up when you run a Cadence tool integrates a **Help** ​ 
-button, usually placed at the top-right of main menu bar.  
- 
- 
-integrated, help system called **cdnshelp**. 
-Attenzione che di ''​cdnshelp''​ executable ce n'​e'​ uno per package! 
- 
-''/​usr/​cadence/<​package>/​tools/​bin/​cdnshelp''​ 
- 
-quindi uno per IC, uno per MMSIM, uno per RC, Incisive etc. ! ATTENZIONE a scriverlo! ​ 
-La cosa migliore e' crearsi degli alias al comando nel ''​.cshrc''​ 
- 
-<​code>​ 
-alias package_help /​usr/​cadence/<​package>/​tools/​bin/​cdnshelp &  
-</​code>​ 
- 
-e.g. 
- 
-<​code>​ 
-alias virtuoso_help ​ $IC_DIR/​tools/​bin/​cdnshelp & 
-alias mmsim_help ​    ​$MMSIM_DIR/​tools/​bin/​cdnshelp & 
-alias incisive_help ​ $IUS_DIR/​tools/​bin/​cdnshelp & 
-... 
-</​code>​ 
- 
- 
-Notare che quest alias sono gia' presenti in /​usr/​local/​config/​cds_config/​CdsIC_615.rc! 
- 
-<​code>​ 
-alias help_cds_ic '​$IC_DIR/​tools/​bin/​cdnshelp &' 
-alias help_cds_assura ​  '​$ASSURA_DIR/​tools/​bin/​cdnshelp &' 
-alias help_cds_ext ​     '​$EXT_DIR/​tools/​bin/​cdnshelp &' 
-</​code>​ 
- 
- 
- 
-Oppure posso mettere tutto in uno scriptino ''​cdnshelp.csh''​ or ''​cadence_doc.csh'',​ che e' piu' elegante! 
- 
-<​code>​ 
-#!/bin/csh 
-echo "​Select Cadence documentation : " 
-echo " ​                         [1] Cadence IC (Virtuoso) 6.1.5" 
-echo " ​                         [2] Cadence Incisive 10.20" 
-echo " ​                         [3] Cadence RC  9.10" 
-echo " ​                         [4] Cadence SOC 8.10" 
-echo " ​                         [5] Cadence EDI (Encounter)9.12"​ 
-echo " ​                         [6] Cadence SPB (Allegro) 16.50" 
-set answer = $< 
-if ( $answer == "​1"​ ) then 
-    source "/​usr/​local/​config/​cds_config/​CdsIC_615.rc"​ 
-    /​usr/​cdsIC443/​tools/​bin/​openbook & 
-else if ( $answer == "​2"​ ) then 
-    source "/​usr/​local/​config/​cds_config/​CdsIC_445.rc"​ 
-    /​usr/​cdsIC445/​tools/​bin/​openbook & 
-else if ( $answer == "​3"​ ) then 
-    source "/​usr/​local/​config/​cds_config/​CdsPSD_136.rc"​ 
-    /​usr/​cdsPSD136/​tools/​bin/​openbook & 
-else if ( $answer == "​4"​ ) then 
-    echo "​Sorry,​ this option has not been cconfigured yet..."​ 
-    exit 
-    source "/​usr/​local/​config/​cds_config/​CdsPSD_142.rc"​ 
-    /​usr/​cdsPSD142/​tools/​bin/​openbook & 
-else if ( $answer == "​5"​ ) then 
-    echo "​Don'​t forget to open Netscape..."​ 
-    source "/​usr/​local/​config/​cds_config/​CdsIC_445.rc"​ 
-    /​usr/​cdsLDV31/​tools/​bin/​cdsdoc & 
-else if ( $answer == "​6"​ ) then 
-    echo "​Don'​t forget to open Netscape..."​ 
-    source "/​usr/​local/​config/​cds_config/​CdsIC_445.rc"​ 
-    /​usr/​cdsLDV34/​tools/​bin/​cdsdoc & 
-else 
-    echo "​Option not valid - exiting"​ 
-endif 
-</​code>​ 
- 
- 
- 
-Ovviamente IC_DIR etc. devono essere settate, e.g. ''​setenv IC_DIR /​usr/​cadence/​IC_6.1.5''​ 
- 
-cdnshelp is the help document browser for Cadence. It opens .html files located in the install directory for each tool  
- 
-<​code>​ 
-virtuoso_help 
-</​code>​ 
- 
-{{:​vlsi:​cdnshelp_ic_615.png?​700}} 
- 
- 
-Esiste anche la documentazione della documentazione in  
- 
-la **//Cadence Help User Guide//** in 
- 
-''/​usr/​cadence/<​package>/​doc/​cdnshelp/​cdnshelp.pdf''​ 
- 
- 
-for instance ''/​usr/​cadence/​IC_6.1.5/​doc/​cdnshelp/​cdnshelp.pdf'' ​ 
-or ''/​usr/​cadence/​EDI_9.12/​doc/​cdnshelp/​cdnshelp.pdf''​ (documents are the same,  
-they might differ in the minor release number). 
- 
- 
-The Cadence documentation,​on-line helps 
- 
-Html files are used by the Web based help system 
- 
-The pdf version of the web pages. 
- 
-There is also a java front end that can be started on the command line. 
- 
-cdsdoc has been replaced by a much simpler, more  
- 
-By clicking on this button will open the help 
-documentation containing the information relevant to that window. 
-Se also //​[[http://​cadence.wikispaces.com/​Documentation+index]]//​ 
- 
-[/tmp] 
- 
-===== Mentor Graphics documentation ===== 
- 
-[[http://​www.mentor.com/​|Mentor Graphics]] stand-alone tools are installed ​ 
-in the ''/​usr/​mentor/''​ (''/​export/​elt59xl/​disk0/​mentor/''​) directory. 
- 
-From Mentor Graphics comes the **Calibre** physical verification tool, which is used  
-for layout design rule checking (DRC), layout-versus-schematic (LVS) and parasitic ​ 
-extraction (PEX). The Calibre documentation is placed under 
- 
-''/​usr/​mentor/​docs/​docs_cal_2010.3_19.12/​docs/''​ 
- 
-Html and pdf files are contained in two different sub directories named  
-''​htmldocs''​ and ''​pdfdocs''​. ​   
- 
- 
-===== Synopsys documentation ===== 
- 
-[[http://​www.synopsys.com/​|Synopsys]] stand-alone tools are installed 
-in the ''/​usr/​synopsys/''​ (''/​export/​elt59xl/​disk0/​synopsys/''​) directory.  ​ 
- 
-From Synopsys comes the **Verilog Compiler Simulator (VCS)**. The relative documentation 
-can be found in  
- 
-''/​usr/​synopsys/​vcs-mx_vD-2010.06/​doc/''​ 
- 
-===== PDK documentation ===== 
- 
-The **process design kit (PDK)** installation for a particular technology ​ 
-is accompained by its own specific documentation. The amount of such documentation ​ 
-varies with the technology and also depends on the PDK source, which can be the  
-manufacturer itself or a third party as [[http://​www.europractice.com/​|Europractice]] ​ 
-IC fabrication services or [[http://​www.cern.ch/​|CERN]]. 
- 
-This documentation is in form of plain text documents (readme files, release notes, ​ 
-HowTo'​s,​ rule files etc.) as well as traditional pdf documents, such as design manuals, 
-training and references to the usage of the PDK with Cadence or other design environments. ​ 
-All the documentation is located under the top PDK installation directory. ​ 
-Inspect the content of this directory and search for some ''​doc/''​ or ''​documents/'' ​ 
-sub directories,​ text files, pdf files etc.  
- 
-For more details about your specific technology, please refer to the information ​ 
-contained in the __[[vlsi:​private:​home|VLSI protected area]]__. 
- 
-===== Confidentiality of tools and technology information ===== 
- 
-Proprietary and confidential information cannot be included inside public VLSI Wiki pages. 
- 
-All the [[http://​www.cadence.com/​|Cadence]] tools and the associated documentation ​ 
-contain **trade secrets** and **proprietary information** protected by **copyright laws**, ​ 
-as well as [[http://​www.mentor.com/​|Mentor Graphics]] and [[http://​www.synopsys.com/​|Synopsys]] applications. 
-Thus any or parts of the documentation accompanying the EDA softwares licensed for the VLSI  
-laboratory cannot be uploaded on these pages or published on the Web. 
- 
-Technology information,​ such as device models, library files, datasheets and PDK documentation ​ 
-are very confidential and restricted. No information about technology processes can be disseminated ​ 
-to a third party or published on the Web. Moreover each VLSI user is bound to specific ​ 
-//​**non-disclosure agreement (NDA)**// contracts with manufacturers (foundries) or third party  
-IC fabrication services depending on the particular technologies ​ 
-involved in his research activity. **//Never disclose foundry secrets !//** 
- 
- 
-===== Build your own documentation repositories ===== 
- 
-The best way to to quickly access the documentation is just  
-to make **symbolic links** to it in your local area,  
-as described in //​[[http://​cadence.wikispaces.com/​Documentation+index]]//​. 
- 
-The ''​~/​scratch''​ area is a good place in which put the software ​ 
-documentation. Go to your ''​~/​scratch''​ and create a ''​doc/''​ directory: 
- 
-<​code>​ 
-cd ~/scratch 
-mkdir doc 
-</​code>​ 
- 
-\\ 
-Under ''​~/​scratch/​doc''​ you can then create further directories which will  
-contain Cadence, Mentor Graphics and Synopsys documentation: ​ 
- 
-<​code>​ 
-cd ~/​scratch/​doc 
-mkdir cadence mentor synopsys 
-</​code>​ 
- 
-\\ 
-At this point you can recursively make symbolic links (soft links) to all pdf documents ​ 
-which come with a Cadence package or another tool. Simply run a command in the general form 
- 
-<​code>​ 
-find /​path/​to/​installation/​directory/​doc -name "​*.pdf"​ -exec ln -s {} . \; 
-</​code>​ 
- 
-\\ 
-The command performs a recursively search through all ''/​path/​to/​installation/​directory/​doc''​ 
-sub directories,​ looking for pdf files. When a pdf is found, brackets ''​{}''​ are replaced with  
-the found pdf and a symbolic link pointing to that file is created in the current directory ​ 
-(where you have run the command). 
- 
-Follow this procedure for all the tools you are working with. 
-In particular, for Cadence packages create under ''​~/​scratch/​doc/​cadence'' ​ 
-a new directory for each platform documentation you want to link, e.g. 
- 
-<​code>​ 
-cd ~/​scratch/​doc/​cadence 
-mkdir virtuoso_6.1.5 
-cd virtuoso_6.1.5 
-find /​usr/​cadence/​IC_6.1.5/​doc -name "​*.pdf"​ -exec ln -s {} . \; 
-</​code>​ 
- 
-\\ 
-In the same way you can link the pdf technology documentation. ​ 
-Keep tools and technology documentation separated, hence link 
-the technology documents in your working directory: 
- 
-<​code>​ 
-cd ~/​scratch/<​tech_dir>​ 
-mkdir doc 
-cd doc 
-find /​path/​to/​PDK/​installation/​directory/​ -name "​*.pdf"​ -exec ln -s {} . \; 
-</​code>​ 
- 
-\\ 
-Since no quota limits has been set for VLSI users, in order to save disk space  
-please **don'​t make unnecessary hard copies of pdf files in your local area**, 
-use symbolic links indeed (the space taken by a symbolic link does not depend ​ 
-on the space taken by the target!). 
- 
-Now you have a nice collection of documentation available in your ''​~/​scratch/​doc/''​ 
-and ''​~/​scratch/<​tech_dir>/​doc/''​ directories,​ and accessing the various documents ​ 
-will be fast and simple using a pdf reader. The default one available on Scientific ​ 
-Linux distributions is **Evince**. Each time you need to open a pdf document simply ​ 
-invoke the ''​evince''​ executable (''/​usr/​bin/​evince''​) at the command line followed ​ 
-by the name of the pdf document, e.g. 
- 
-<​code>​ 
-cd ~/​scratch/​doc/​cadence/​virtuoso_6.1.5 
-evince anasimhelp.pdf & 
-</​code> ​ 
- 
-\\ 
-If you are working remotely run the command in background with the ''&''​ to still  
-have the command prompt active. By default **Adobe Reader** may not be installed ​ 
-on your machine, please check with the ''​witch acroread''​ command. If the application ​ 
-is installed, then you can also use the ''​acroread filename.pdf''​ command. ​ 
- 
-As already mentioned Cadence documents have some quite cryptic file names, ​ 
-(some are more clear than others) which require you gain a little experience ​ 
-in guessing the content. For this reason, whenever a new tool will be introduced ​ 
-in the WorkBook tutorials, detailed references to the related documentation will  
-be provided as well.  
- 
-===== Command line help switches ===== 
- 
-Many Cadence executables offer additional text information in form of command line helps. ​ 
-Just invoke in a terminal window a tool executable by adding a ''​-h''​ or ''​-help''​ switch: 
- 
-<​code>​ 
-executable -help 
-</​code> ​ 
- 
-\\ 
- 
-The output typically contains a short description of the available switches and parameters ​ 
-that can be passed when you launch the executable. If you retrive a ''​Command not found'' ​ 
-error the executable has not been included in the UNIX system search path, please check  
-your environment setup. 
- 
-If you want to save a local copy of such information you can redirect the screen output ​ 
-to a text file with ''>''​ or ''<​nowiki>​ >> </​nowiki>''​ operators, e.g. 
- 
-<​code>​ 
-cd ~/​scratch/​doc/​cadence 
-virtuoso -help > virtuoso.help 
-</​code>​ 
- 
-===== Web resources ===== 
- 
-The documentation which accompanies each tool is comprehensive and exhaustive, ​ 
-but sometimes dispersive. As a matter of fact, each pdf document consists ​ 
-of hundreds of pages and it might be difficult to quickly find the answer to  
-a specific problem. 
- 
-That's why you should **use the Web extensively** too. It is very likely that  
-any questions you face have already been posed (and solved!) in the Web design ​ 
-community. There are lot of **forums** dedicated to the VLSI IC  
-design, for instance **[[http://​www.edaboard.com/​|EDAboard]]** and the  
-**[[http://​www.designers-guide.org/​|Designer'​s Guide community]]**. 
-You can also browse the official **[[http://​www.cadence.com/​community/​forums/​|Cadence forums]]**. 
-If you don't get a hint with your first search, try various search combination in Google 
-and you are likely to end up with something that answers your questions, whether it is  
-related to a tool or a technology issue. ​ 
-We encourage new users to join these forums themselves (the registration is completely ​ 
-free of charge). Simply post a new thread whenever you have a question that is not answered ​ 
-in the WorkBook pages or with your Google search. ​ 
- 
-Browsing the Web will turn up tens of tutorials and HowTo'​s as well,  
-typically published by other research institutes and universities. 
-As already mentioned such documentation is often neither in-depth and nor up-to-date ​ 
-with the latest software releases. A complete list of these tutorials has been  
-collected in  __[[vlsi:​webtutorials|Third party tutorials]]__. Wherever required specific ​ 
-references to these sources will be included in the WorkBook tutorials. 
- 
-  * [[http://​www.cadence.com/​community/​forums/​38.aspx|Cadence Custom IC Design Forum]] 
-  * [[http://​www.cadence.com/​community/​forums/​29.aspx|Cadence Digital Implementation Forum]] 
-  * [[http://​www.edaboard.com |EDAboard - Forum for Electronics]] 
-  * [[http://​www.designers-guide.org|The Designer'​s Guide Community]] (people from Cadence are active on this forum) 
- 
-===== Reference books ===== 
- 
-A large amount of literature about microelectronics and VLSI IC design and fabrication ​ 
-has been proposed in the past decades. To save time, a detailed list of various reference ​ 
-books is included in the Wiki and can be found __[[vlsi:​books|here]]__. Titles marked with [x]  
-are available in the VLSI laboratory. 
- 
-A further list of books and readings recommended by members of the  
-**[[http://​www.designers-guide.org/​|Designer'​s Guide community]]** can be found  
-[[http://​www.designers-guide.org/​books|here]]. ​ 
- 
- 
- 
- 
-====== ====== 
-\\ 
----- 
- 
-Last update: [[ pacher@NOSPAMto.infn.it | Luca Pacher ]] - Mar 8, 2013 
- 
-~~NOTOC~~