SystemVerilog Interface 的 inout port

發現一個現象,
當使用 SystemVerilog Interface 時,
若 Interface 內有用到 inout,
則該訊號不能宣告成 logic,
必須要宣告成 wire,
不然如果與非 interface 寫法的 inout port 相連時,
NC 會回報錯誤:

ncelab: *E,CUVMIO (../tb/tb.sv,58|48): port connections to inout ports must be collapsible, that is, they must be nets of the same size.

原來 CUPS 是 Apple 的東西

在安裝 Linux Print Driver 的時後,
順手印了一張測試頁,
測試頁的標題是: “CUPS Printer Test Page”,
這張測試頁,從以前到現在,印很多次也看過很多遍了;
不過剛剛無意間看了測試頁下方的小字:
“… CUPS and the CUPS logo are the trademark property of Apple Inc. …”
原來 CUPS 是 Apple 的東西,
現在才發現,Apple 在 Opensource 也貢獻了不少東西。
不知道在 Linux 的世界裡,有沒有微軟貢獻的東西?

Compile SystemC on OpenSuSE 11.3

Download systemc-2.2.0.tgz from
解開壓縮檔

$ tar zxvf ./system-2.2.0.tgz

因為 gcc 是 4.x.x 版,所以要做 patch,compile 才會過
修改 systemc-2.2.0b/src/sysc/utils/sc_utils_ids.cpp
加上:

#include "string.h"
#include "cstdlib"

Compile SystemC and Install


$ sudo mkdir /opt/systemc
$ cd system-2.2.0
$ mkdir objdir
$ cd objdir
$ ../configure --prefix=/opt/systemc
$ make
$ make check # if you want to check
$ sudo make install

OpenSuSE 11.2 x64 + Sun Grid Engine

Workstation:

    PC1 : NIS Server, NFS Server, SGE master
    PC2 : NIS Client, NFS Client, SGE Execution Hosts
    PC3 : NIS Client, NFS Client, SGE Execution Hosts
    PC4 : NIS Client, NFS Client, SGE Execution Hosts
    —-
    PC1, share /home
    PC2~4, mount PC1:/home on /home

OS:

    OpenSuSE 11.2 x64

Package Requirement:

    openmotif22-libs
—————————————————————————

Step.1 Configuration Password-less ssh Access for the root User

    === PC2~4 ===


      check /etc/ssh/sshd_config


        => “PermitRootLogin yes


    === PC1 ===

    // Generate SSH Key
    # ssh-keygen -t rsa

    // Put SSH public key to slave PC2~4
    # rsync -av /root/.ssh/id_rsa.pub root@PC2:/root/.ssh/authorized_keys
    # rsync -av /root/.ssh/id_rsa.pub root@PC3:/root/.ssh/authorized_keys
    # rsync -av /root/.ssh/id_rsa.pub root@PC4:/root/.ssh/authorized_keys

    // Test Password-less ssh access for root user

    # ssh root@PC2
    # ssh root@PC3
    # ssh root@PC4

    Step.2 Download Sun Grid Engine


      Sun Grid Engine 6.2 Update 4, Linux x64 (required), tar.gz format


        sge62u4_linux24-x64_targz.zip … 27.63 MB


      Sun Grid Engine 6.2 Update 4, Linux x86 (required), tar.gz format


        sge62u4_linux24-i586_targz.zip … 27.56 MB


    Step.3 Setup SGE Master / Execute Node


      PC1 (SGE Master):


      # mkdir /home/srv/sge6-2
      # cd /home/srv/sge6-2
      # tar -zxvf $DOWNLOAD/sge6_2u4/sge-6_2-common.tar.gz
      # tar -zxvf $DOWNLOAD/sge6_2u4/sge-6_2u4-bin-linux24-x64.tar.gz
      # tar -zxvf $DOWNLOAD/sge6_2u4/sge-6_2u4-bin-linux24-i586.tar.gz
      # SGE_ROOT=/home/srv/sge6-2; export SGE_ROOT
      # util/setfileperm.sh $SGE_ROOT

      // GUI Install
      # ./start_gui_installer


        Admin User = root
        Qmaster Host = PC1
        Grid Engine root directory = /opt/sge6-2
        Cell Name = cell_test

Step.4 Test

    // Login in PC1~4 by normal user account
    # source /home/srv/sge6-2/cell_eda/common/settings.csh
    # qsub my_job.sh