Znn3bq.jpeg
ÉÇÍ·´óѧº£Ñó¿ÆÑ§½ÓÊܵ÷¼Á
²é¿´: 305  |  »Ø¸´: 0
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£

sdlj8051

½ð³æ (ÖøÃûдÊÖ)

[½»Á÷] SystemC¡ª¡ªÒ»Ì×½«C++À©Õ¹ÎªÓ²¼þÃèÊöÓïÑÔµÄClass Library

1. SystemC ÊÇÒ»Ì×C++ Class Library£¬½«C++À©Õ¹³ÉÁËÒ»ÃÅÓ²¼þÃèÊöÓïÑÔ(HDL)¡£ÎҸоõ£¬Ñ§Ï°SystemCÖÁÉÙÒª¶®Á½Ñù¶«Î÷£ºC++¡¢Ò»ÃÅÓ²¼þÃèÊöÓïÑÔ¡£ÎÒÊìϤC++£¬²¢ÇÒÊìϤVerilog£¬Òò´ËѧSystemCÄܾÙÒ»·´Èý¡¢´¥ÀàÅÔͨ¡£

2. SystemC ʹÓÃÁËC++µÄºÜ¶àÌØÐÔ£º¶àÖØ¼Ì³Ð¡¢ÐéÄâ¼Ì³Ð¡¢Ä£°å¡¢RTTI (at least for dynamic_cast)¡¢Òì³£´¦Àí¡¢²Ù×÷·ûÖØÔØ¡£ËƺõûÓÐʹÓÃSTL¡£

3. SystemC ÊÇÒ»Ì×Application Framework£¬¸öÈ˸оõ£¬ÉõÖÁºÍMFCÆÄÓÐÏàËÆÖ®´¦£º

һЩsomewhat¹Å¹ÖµÄºê£ºSC_METHOD¡¢SC_THREAD¡¢SC_CTOR µÈµÈ
Ò»¸öÈ«¾ÖµÄmanager sc_simcontext (ÀàËÆMFCÖеÄCWinAPP)£¬ÓÃsc_get_curr_simcontext()Äܵõ½¸ÃÈ«¾Ö¶ÔÏóµÄµØÖ·(ÀàËÆMFCÖеÄAfxGetApp() )
main() ²ØÉíÓÚSystemCÖУ¬ÄãÒª×öµÄÊÇдһ¸ösc_main()º¯Êý×÷Ϊ³ÌÐòµÄÈë¿Ú£¬SystemC»áµ÷ÓÃÄãµÄsc_main()
ʹÓñíÇý¶¯¼¼Êõ£¬¾ÍÏñMFCÖеÄMessage´«µÝ¡£SystemCÓÃÉÏÃæÄÇЩºê½«class£¨SystemC³ÆÎªmodule£©µÄmember function£¨SystemC³ÆÎªprocess£©×¢²áµ½È«¾ÖµÄ±íÖС£È»ºóSystemCÕâÌ×Application Framework»á¸ù¾Ý·¢ÉúµÄʼþÀ´µ÷ÓÃÄãµÄ´úÂë¡£
4. ´ÓʵÏÖ¼¼ÊõÉÏ¿´£¬SystemCÓÐ×Ô¼ºµÄgarbage collector¡¢×Ô¼ºµÄ memory pool¡¢×Ô¼ºµÄÈÝÆ÷(Ìæ´úSTL)¡£

¸öÈËÌå»á£ºSystemC ÔÚWinXP + VS.NET 2003ϵÄʹÓò½Öè

1. SystemC ÒÔÔ´Â뷽ʽ·¢²¼£¬ÏÈʹÓÃVC7.1±àÒëµÃµ½Ò»¸ö¿âÎļþ£ºsystemc.lib

2. ÎÒÃÇдµÄ SystemC ³ÌÐòʵ¼ÊÉÏÊÇC++³ÌÐò£¬Ð´ºÃÒ»¸öSystemC³ÌÐò£¨»òÕß½ÐÉè¼Æ£©£¬ÓÃC++±àÒëÆ÷±àÒëΪobjectÎļþ£¬ÔÙÓësystemc.libÁ´½ÓµÃµ½¿ÉÖ´ÐÐÎļþ¡£

3. Ö´ÐдËexeÎļþ£¬½øÐзÂÕæ¡£´ÓÊä³ö£¨Îļþ»òstdout£©µÃÖª·ÂÕæ½á¹û¡£

¸½£ºÒ»¸ö×î¼òµ¥µÄSystemC module

££i nclude "systemc.h"

// °ë¼ÓÆ÷

struct half_adder : sc_module
{
    sc_in a, b;
    sc_out sum, carry;

    void prc_half_adder()
    {
        sum = a ^ b;
        carry = a & b;
    }

    SC_CTOR(half_adder)
    {
        SC_METHOD(prc_half_adder);
        sensitive << a << b;       // a, b ÔÚÃô¸ÐÁбíÖÐ
    }
};

µÈЧµÄVerilogÉè¼Æ£º

module half_adder(a, b, sum, carry);

    input  a, b;
    output sum, carry;

    reg    sum, carry;
   
    always @(a or b)               // a, b ÔÚÃô¸ÐÁбíÖÐ
    begin
      sum = a ^ b;
      carry = a & b;
    end
   
    /* ÒÔÉÏÎåÐпÉÌæ»»Îª£º
    assign sum = a ^ b;
    assign carry = a & b;
    */

endmodule

[ Last edited by sdlj8051 on 2006-11-1 at 10:25 ]
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ sdlj8051 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[»ù½ðÉêÇë] Óб¬ÁÏ£¬Ò»¸öÇàÄê½ÌʦÂô·¿µÃ400Íò£¬È»ºó»»ÁËÒ»¸öËÄÇàñ×Ó +11 babu2015 2026-04-08 11/550 2026-04-13 16:33 by probebill
[¿¼ÑÐ] 071000ÉúÎïѧ£¬Ò»Ö¾Ô¸ÉîÛÚ´óѧ296·Ö£¬Çóµ÷¼Á +14 TIckLw 2026-04-06 15/750 2026-04-13 10:59 by ѧzh
[¿¼ÑÐ] Ò»Ö¾Ô¸Öйú¿ÆÑ§ÔºÉϺ£ÓлúËù£¬Óлú»¯Ñ§356·ÖÕÒµ÷¼Á +12 Nadiums 2026-04-09 12/600 2026-04-13 08:50 by lhj2009
[¿¼ÑÐ] ÉúÎïѧ308Çóµ÷¼Á +5 ÏàÐűػá¹ââÍòÕ 2026-04-11 5/250 2026-04-12 18:14 by zhouxiaoyu
[¿¼ÑÐ] 085410 273Çóµ÷¼Á +10 X1999 2026-04-09 10/500 2026-04-12 09:24 by ÄæË®³Ë·ç
[¿¼ÑÐ] Çóµ÷¼Á£¬Ò»Ö¾Ô¸²ÄÁÏ¿ÆÑ§Ó빤³Ì985£¬365·Ö£¬ +8 ²Ä»¯Àî¿É 2026-04-11 10/500 2026-04-12 08:42 by 852137818
[¿¼ÑÐ] Çóµ÷¼Á +18 MAXâê㯠2026-04-09 20/1000 2026-04-11 23:31 by zhen¡«
[¿¼ÑÐ] ²ÄÁϹ¤³ÌÈÕÓÉúÇóµ÷¼Á +7 0856?µ÷¼Á 2026-04-10 7/350 2026-04-11 21:33 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 291·Öµ÷¼Á +5 Éϰ¶Ð¡Ó¨¼ÓÓÍ 2026-04-09 6/300 2026-04-11 21:06 by ÄæË®³Ë·ç
[¿¼ÑÐ] Çóµ÷¼Á +6 archer.. 2026-04-09 8/400 2026-04-11 10:55 by zhq0425
[¿¼ÑÐ] 0854µ÷¼Á +5 ÒôÏñµêÌý»¨¹ÄÏ· 2026-04-10 5/250 2026-04-11 10:49 by qingpingzhu
[¿¼ÑÐ] 085500Çóµ÷¼Á²ÄÁÏ +10 Ò×11122 2026-04-09 10/500 2026-04-11 10:39 by maddjdld
[¿¼ÑÐ] 368Çóµ÷¼Á +3 17385968172 2026-04-10 3/150 2026-04-10 20:12 by µç×Ӱµ±ë
[¿¼ÑÐ] 0858Çóµ÷¼Á 5+5 Gky09300550£¬ 2026-04-10 8/400 2026-04-10 19:13 by chemisry
[¿¼ÑÐ] Ò»Ö¾Ô¸211£¬»¯Ñ§Ñ§Ë¶£¬310·Ö£¬±¾¿ÆÖصãË«·Ç£¬Çóµ÷¼Á +27 ŬÁ¦·Ü¶·112 2026-04-07 30/1500 2026-04-10 15:06 by Kilig0317
[¿¼ÑÐ] Çóµ÷¼Á ²ÄÁÏÓ빤³Ì 324·Ö ר˶ +19 ôæôæÒ»ÊéÉú 2026-04-10 21/1050 2026-04-10 11:41 by wp06
[¿¼ÑÐ] ¿¼Ñе÷¼Á-²ÄÁÏÀà-284 +28 Ïë»»ÊÖ»ú²»Ïë½âÊ 2026-04-08 28/1400 2026-04-09 20:08 by µ¹Êý321?
[¿¼ÑÐ] ¿¼ÑÐÇóµ÷¼Á +4 ö©??? 2026-04-08 4/200 2026-04-08 21:44 by ÍÁľ˶ʿÕÐÉú
[¿¼ÑÐ] 388Çóµ÷¼Á +6 ËÄ´¨ÍõÌÎ 2026-04-07 8/400 2026-04-08 00:17 by JourneyLucky
[¿¼ÑÐ] 259Çóµ÷¼Á +5 ¾Í°®³ÔÍÁ¶¹Ñ½Ñ½ 2026-04-07 5/250 2026-04-07 22:40 by JourneyLucky
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û