Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen ittifak-genpat komutudur.
Program:
ADI
genpat, Bir prosedürel model dosyası oluşturucu
SİNOPSİS
genpat [-v] [-k] [dosya]
TANIM
genpat girdi desen dosyasının prosedürel bir açıklamasına izin veren bir dizi C işlevidir.
mantık simülatörü için ASİMUT. Unix genpat komut, bir C dosyasını girdi olarak kabul eder ve
çıktı olarak bir desen açıklama dosyası üretir. ".c" uzantısı verilmeyecektir. NS
tarafından oluşturulan dosya genpat pat formatındadır, bu yüzden GÖRÜLMESİ ŞİDDETLE TAVSİYE OLUNUR. okşama(5)
BU KILAVUZDAN ÖNCE.
SEÇENEKLER
-v ayrıntılı mod
-k tamamlandıktan sonra yürütülebilir dosyayı derleme Makefile ile birlikte tutar
GENPAT DOSYA FORMAT
Kullanıcı açısından, genpat tüm standart C'yi kullanan bir kalıp tanımlama dilidir
tesisler (dahil et, tanımla, değişkenler, döngü, ...). tarafından sağlanan işlevler genpat üzeresiniz
belirli bir sırayla kullanılabilir. Bunları farklı bir sırayla kullanmak sistemi çökertmez, ancak
yürütme hatalarına neden olur. Burada giriş dosyasının açıklamasını takip eder.
A okşama format dosyası iki bölüme ayrılabilir: bildirim ve açıklama bölümü.
Bildirim kısmı, girişler, çıkışlar, dahili sinyaller ve kayıtların listesidir.
Girdiler belirli bir değere zorlanmalı ve diğerleri sırasında gözlemlenmelidir.
simülasyon.
Açıklama kısmı, her bir kalıbın girdilerin değerini tanımladığı bir dizi kalıptır.
ve çıktılar. Model numarası aslında simülatör için mutlak zamanı temsil eder.
Benzer şekilde, bir genpat dosya iki bölüme ayrılabilir: bildirim ve açıklama bölümü.
Bildirimle ilgili işlevler, bildirimle ilgili herhangi bir işlevden önce çağrılmalıdır.
açıklama kısmı.
beyanname Bölüm
Bu kısımda yapmanız gereken ilk şey çıktı dosyasının adını vermektir.
(görmek DEF_GENPAT(3)). Ardından, bu kısım girdileri bildirmenizi sağlar,
çıktılar ve dahili gözlem noktaları (bkz. BEYAN(3)). Ayrıca
sanal diziler oluşturun (bkz. DİZİ(3)).
tanım Bölüm
Tüm sinyaller bildirildikten sonra, giriş değerlerini tanımlamaya başlayabilirsiniz.
Devrenin girişlerine uygulanacak veya uygulanacak çıkış değerleri
simülasyon sırasında üretilen değerlerle karşılaştırın. (görmek ETKİLEMEK(3)). genpat
olaya göre uyaranı tanımlar : sadece sinyal geçişleri tanımlanır. Bu
kısmı ayrıca simülasyon aracına bilgileri kaydetmeniz için talimatlar vermenizi sağlar.
simülasyonun sonunda devrenin durumu. (görmek KAYDET(3)). son şey sen
bu bölümde yapılması gereken çıktı dosyasını oluşturmaktır (bkz. SAV_GENPAT(3)).
FONKSİYONLAR
DEF_GENPAT() çıktı dosyasının adını tanımlar.
SAV_GENPAT() çıktı dosyasının oluşturulmasını sağlayın
BEYAN() girdileri, çıktıları ve dahili gözlem noktalarını bildirir.
DİZİ() aynı tipteki sinyallerin bir "sanal dizide" gruplandırılmasına izin verir.
manipülasyonlarını kolaylaştırmak için
İÇİNDE() iki desen arasındaki kayıtların değerlerini değiştirir.
ETKİLEMEK() belirli bir model numarasında bir sinyale bir değer atar. Bu değer tutulur
sinyale yeni bir değer atanana kadar sinyal üzerinde
KAYDETMEK() sonunda devrenin durumunu kaydetmesi için simülasyon aracını bilgilendirir.
simülasyon
ETİKET() mevcut kalıba bir etiket verir
GETCPAT() mevcut desenin numarasını döndür
ÖRNEKLER
#Dahil etmek
#include "genpat.h"
char *inttostr(entier)
int giriş;
{
karakter *str;
str = (char *) mbkalloc (32 * sizeof (char));
sprintf (str, "%d", entier);
dönüş(str);
}
/*--------------------------------*/
/* açıklamanın sonu */
/*--------------------------------*/
ana ()
{
int ben;
intj;
int eğri_vect = 0;
DEF_GENPAT("örnek");
/* arayüz */
BEYAN ("a", ":2", "X", IN, "3'ten 0'a kadar", "" );
BEYAN ("b", ":2", "X", IN, "3'ten 0'a kadar", "" );
DECLAR ("s", ":2", "X", ÇIKIŞ, "3'ten 0'a kadar", "" );
BEYAN ("vdd", ":2", "B", IN, "", "" );
BEYAN ("vss", ":2", "B", IN, "", "" );
ETİKET ("toplayıcı");
ETKİLE ("0", "vdd", "0b1");
ETKİ ("0", "vss", "0b0");
(i=0; i<16; i++) için
{
(j=0; j<16; j++) için
{
ETKİLE (inttostr(cur_vect), "a", inttostr(i));
ETKİLE (inttostr(cur_vect), "b", inttostr(j));
cur_vect++;
}
}
SAV_GENPAT();
}
ÇEVRE DEĞİŞKENLER
genpat sonuç dosyasına bir uzantı vermek için VH_PATSFX ortam değişkenini okur.
onworks.net hizmetlerini kullanarak Alliance-genpat'ı çevrimiçi kullanın