關於易符技術
1.
何謂易符系統晶片技術(eForth SOC Technology)?
2.
何謂可伸縮的中央處理器架構 (Scalable CPU Archtecture)?
3.
何謂中文CPU(CCPU),與一般 CPU 有何差別?
4.
易符的 eCore 和 eE32-1 有何關係?
5.
易核(eCore)的架構有何特色?
6.
易核(eCore)的指令集有多簡單?
7.
何謂『單晶中文系統引擎』 (eForth Chinese SOC Engine)?
8.
eE32-1 提供哪些工具軟體?
關於使用者及應用
1.
eE32-1 有哪些的發展方法與工具?
2.
易符如何支援使用者開發應用的工作?
3.
中文字形晶片 與 中文引擎 的應用有何差別?
4.
如果我不需要中文,我可不可以拿掉?
5.
如果我不需要eForth OS,我可不可以拿掉?
關於 Forth 與 eForth
0.
台灣符式協會的由來?
1.
什麼是 FORTH ?
2. eForth 與 Forth 有何差別 ?
3.
什麼是 FORTH 引擎(FORTH晶片)?
4.
要如何看待 FORTH ?
5.
要如何學習 FORTH?
6. 如何取得 eForth 的技術資源?
關於易符技術
1. 何謂易符系統晶片技術 (eForth SOC Technology)?
就是 eCore+eOS+eSOC+eFontbase
也就是:
易核(eCore)
+ 易符晶片作業系統(eForth On-Chip OS--eOS)
+ 易符SOC發展平台 (eForth SoC Platform--eSOC)
+ 易符中文字庫 (eForth Chinese Fontbase--eFontbase)
所構成的中文SOC整合技術。
back to top
2. 何謂可伸縮的中央處理器架構 (Scalable CPU Architecture)?
eCore 指令集為6-BIT寬度的指令格式,可以用在 16/24/32/64 CPU 核心的設計•eSOC設計平台,可以有相同的指令集及作業系統下,同時支援各種CPU位元寬度•而eOS仍為透通•此一架構就是可伸縮的中央處理器架構•
back to top
3. 何謂中文CPU(CCPU),與一般 CPU 有何差別?
一般CPU是從英文的ASCII電腦的角度設計CPU,中文CPU是從中文需求的角度來建構CPU•中文CPU有幾個需:
1) 中文字碼處理:
現代中文字碼以4-BYTE為基數 ,並應該涵蓋可以承載世界各國語文UNICODE,因此32位元為其基數•
2) 中文字型筆畫的硬體支援:
中文筆畫為中文輸出的基本要件,因此由CPU內建硬體支援•以點陣及
TRUE-TYPE的中文支援,需要耗費龐大的記憶體及運算資源(MIPS),才能擁有基本的中文 能力•因此,到目前為止除了 PC、PDA、手機及專業的中文電子字典外,一般的儀器設備家用電器都沒有或僅能支援有限的中文的顯示,這主要是成本太高的緣故•中文CPU配合上易符字庫,可以降低數位中文裝置的進入門檻,促進低階數位中文裝置的普遍化•
3) 內建中文字庫及動態組字的字庫擴充功能:
低成本的中文字庫,為數位中文裝置普遍化的重要前提,易符字庫承襲了台灣中央研究院中文研究的成果,並加以工程化及商品化,因此擁有既權威而又完整的中文文字資料庫•易符字庫同時具有動態組字的功能,對於不在字庫內的字仍可以動態合成,因此不再有缺字的問題•所以,易符字庫也叫做易符無限字庫•
這樣為中文電腦做最佳化的 CPU 就『中文CPU』了•
back to top
4. 易符的 eCore 和 eE32-1 有何關係?
eCore 是 eP16/eP24/eP32/eP64幾種核心的總稱•eE32-1
是易符智慧科技的第一顆通用型中文系統晶片,內建有 eForth晶片作業系統、中文加速器、易符中文字庫、RAM、OTP、IO、RS232、SPI、IIC等
IO支援,為單晶中文系統主要部份•eE32-1 只要加上鍵盤與LCD銀幕,其實就是一部完整的小型中文電腦了•
back to top
5. 易核(eCore)的架構有何特色?
真實機器的核心
eCore 是 eForth虛擬機器(eForth Virtual Machine)的底層硬體,加上更高階的eForth OS 就是一部最有效率的eForth真實機器(eForth
Real Machine).
back to top
兩個堆疊
eCore 有兩個堆疊,一個是傳統的回返堆疊(retrun stack)另一個是FORTH特有的資料堆疊(Data Stack).
6-Bit 寬的精簡指令碼提供必要的核心指令以及選擇性的加強指令,使得
16/24/32/64位元的CPU可以在統一的硬體架構與作業系統下完成 .
back to top
6. 易核(eCore)的指令集有多簡單?(下載
eP32_CoreP32_Core)
一共僅32個指令左右(各 MODEL稍有差異),有CPU常識的人都可以在10分鐘的解說後,運用這些指令•以下為
易核的指令集:
指令 資料堆疊變化 解說
---- -------------
-----------
ADD
( n n -- n ) Pop S and add it to T.
AND
( n n -- n ) Pop S and AND it to T.
BC ( n -- )
Branch on Carry, low-level primitive only
BRA
( -- )
Branch on Zero, primitive of IF/WHILE/UNTIL
CALL
( -- ) Call subroutine
COM ( n n -- n )
Complement all bits in T
DIV Division step, primitive foe division
DROP ( n -- )
Pop T.
DUP ( n -- n n )
Duplicate T.
LDI ( n n -- n ) Push in-line literal to T.
LDX ( -- n )
Push memory X to T. primitive of @
LDXP
( -- n ) Push memory X to T. Increment X. primitive of @+
MUL
Multiplication step. primitive of *
NEXT
Loop back if R none zero, R decremnet 1, else pop R and step out of the
loop
NOP ( -- )
Do nothing.
OVER ( m n -- m n m )
Duplicate S.
POP ( -- n )
Pop R to push T. Forth R>
PUSH ( n -- )
Pop T to push R. Forth >R
RET ( -- )
Return from subroutine. Forth EXIT
SHL ( n -- n )
Shift T left 1 bit. Forth 2*
SHR ( n -- n )
Shift T right 1 bit. Froth 2/
STX ( n -- )
Pop T to memory address X. primitive of !
STXP ( n -- )
Pop T to memory X. Increment X. primitive !+
TX ( n -- )
Pop T to X. primitive of @ !
XOR ( n n -- n )
Pop S and Exclusive OR it to T.
XT ( -- n )
Push X to T. primitive of @
!
back to top
7. 何謂『單晶中文系統引擎』 (eForth Chinese SOC Engine)?
易符核心(eCore) 內附『易符晶片作業系統(eForth
On-chip OS)』、內建中文字庫、內建的 RAM
內建的RS232、GPIO等IO就是一個完整的中文電腦引擎了•此一晶片可接受程式的輸入,並可編譯及解譯程式,並執行輸入輸出的控制及儲存的功能•只要在這引擎之上,加大量儲存的FLASH/EEPROM/RAM(選擇性的),或再加上銀幕和鍵盤(也是選擇性的),就是一部功能強大的中文電腦了•
back to top
8. eE32-1 提供哪些工具軟體?
eE32-1 是 eForth 真實機器(eForth Real Machine)的核心•內建有包含了COMPILEReForth OS
的編譯器模式(COMPILE)就是 CPU 的高階 ASSEMBLER,這種互動式的完全開 發環境,就是eSOC應用開發環境•這種 ASSEMBLER 到 OS 之間無接縫的高度整合是 eFORTH的一大特點,這也使得易符單晶中文電腦引擎的應用開發工作,在極精簡的裝備下便可有效進行•這一特性對於中文電腦應用的普遍化具有關鍵性的作用•
back to top
關於使用者及應用
1. eE32-1 有哪些的發展方法與工具?
易符提供裝有外裝RAM/EEPROM/SDRAM/ FLASH等資源的易符單晶中文系統模組一號(eCSOCM-1)
A. 基本工具:
用 WINDOWS HYPER-TERM 連線開發因為 eE32-1 已經是一部精簡的電腦了,在 IBM PC 的 RS232 連線的
HYPER-TERM 模式下,便可接受程式的輸入/DOWNLOAD並進行測試,進行基本的開發工作•
此一模式在工作現場,進行測試與偵錯等維護時,更會顯現出易符單晶系統架構簡單而強大的效益•
B. 易符SOC開發平台 (eSOC PLATFORM):
這是一個高整合度的工作平台•透過 IBMPC 上的整合開發環境,對於編輯、編譯、除錯及檔案資料的管理均可在 WIDOWS
的工作環境下得到充分有效的發揮•此 開發平台在桌面開發期間,非常的方便•
eE32-1 本身在極少的外加資源的情況下,系統開發的工作便可展開•開發設計工作可在最簡易最低成本的情況下進行,這是eForth SOC
無人能出其右的特質•這樣的特質,在當你必須離開實驗桌面,在現場解決問題時,或你必須面對及時的互動時(如通訊),你就會體驗到簡單彈性所帶來的優美與活力•開發驗證完成後只要將程式碼燒到 OTP ROM便可以作成最終的產品零件了•
back to top
2. 易符如何支援使用者開發應用的工作?
易符除提供『單晶中文系統模組』,可從以下幾個途徑取得支援:
a. 中文晶片討論區可以討論
http://www.eforth.com.tw/php/phpbb2/index.php
b. 直接尋求易符的協助
公司 03-666-3322
陳昌江 (AJ, 阿江) 0931-849127
aj chen@eforth.com.tw
吳建佳 (WUJA 阿佳) 0920-884-707
[email protected]
丁陳漢蓀 Dr. C. H. Ting
[email protected]
關於 FORTH 可以尋求:
http://www.eforth.com.tw
其中易符學苑有丁陳老師20年來龐大的FORTH資料
http://www.figtaiwan.org
台灣FIG 有許多FORTH同好,你可以向他們請益或交換心得•
每個月都會在一個禮拜六的9:00-12:00 在中原大學 醫工系 5F
電腦教室聚會會議形式為自由發表一些FORTH的成果或心得•都是免會參加,請注意 www.figtaiwan.org
的消息或主 動登錄email便的收到開會通知•
秘書長 陳爽 0920-714-028
email: [email protected]
back to top
3. 中文字形晶片 與 中文引擎 的應用有何差別?
中文晶片 為單一功能的字形產生晶片,用以支援一些因為成本、記憶體空間不足或運算能力不足的小型系統取得完整的字形•中文引擎
則為內建有中文字形產生器及 各種IO週邊支援的通用型控制器•只要只要加上鍵盤與LCD銀幕,其實就是一部完整的小型中文電腦了•例如放上字典的資料檔,其實就已經一部字典了•
back to top
4. 如果我不需要中文,我可不可以拿掉?
可以•中文字庫佔的記憶體甚 多,在OTP板的eE32-1中可以拿掉中文移做其他用途•
back to top
5. 如果我不需要eForth OS,我可不可以拿掉?
可以。但內建的 eForth on-chip OS 只有 5 KBYTE,幾乎是不需要成本•除非有特殊的目的,否則拿掉 eForth OS
就必須重新建構開發測試的平台,以現在腦力及管理成本 遠勝於硬體成本的年代,一般的USER並不是好的辦法•
back to top
關於 Forth 與 eForth
0. 台灣符式協會的由來 ?
緣起
1981年丁陳漢蓀博士帶著 System
Guide
to Fig-Forth, FORTH-79
回國在陽明醫學院任客座教授,並召集昔日的學生傳講 FORTH 系統的精義,於是漸漸形成。
台灣的符式(FORTH)協會,在每月第四 個禮拜六下午定期聚會,這是FORTH協會的由來。
月會地點
聚會地點從早期的陽明醫學院開始到台灣工業技術學院(現台科大)再轉到中央研究院,其中90年代全球的 FIG
熱潮逐漸歸於平靜,台灣的FIG 活動也不甚熱絡,直到2000年丁陳老師偕同 Forth 同好加入易碼科技旋繼成立易符智慧科技(eForth
Technology Inc.)之時, 台灣 FIG 因為eForth
晶片計劃的出現 ,活動漸漸恢復昔日的熱絡。為了方便新竹會員的方便,於是聚會地點在蔡育秀老師的協助下,改到中原大學 醫工系 5F 電腦教室至今。
back to top
1. 什麼是 FORTH ?
FORTH 是一種與電腦交談的語言,當直接在終端機控制台模式 (TERMINAL CONSOLE
MODE)是互動的解譯器(INTERPRETER)模式,但當這交談進入編譯(COMPILER)模 式時(也就是定義一個新字--新的副程式),它就是一個編譯器了,直到定義結束,才又回到交談解譯模式•
FORTH也是一個精簡的作業系統,並且是一個精簡可以延伸的作業系統,因此, 在資源有限的單晶電腦上,特別能顯現他的優異特質•FORTH
具有兩個堆疊,一個是傳統的回返堆疊(retrun stack)另一個是FORTH特有的資料堆疊(Data Stack).
FORTH 的核心是一個虛擬機器(Virtual Machine),在一般微處理機上的 FORTH都是把 CPU
包裹成FORTH虛擬機器(FORTH Virtual Machine)的核心,然後將FORTH 的高階 作業程式碼移植上去• 而 FORTH
引擎(晶片),就是以硬體直接運行這個FORTH虛擬機器的核心及內建必要的核心指令還有選擇性的加強指令•
back to top
2. eForth 與 Forth 有何差別 ?
eForth 是 Forth 的一種版本•就像 LINUX 和 UNIX 之間的關係一般•eForth OS
的指令集有幾個指令與 ANSI FORTH有差別,eForth 是為崁入式應用做最佳化,但若需 要標準ANSI FORTH
只要再加寫幾個字便可轉換•最明顯的差別是 ANSI FORTH 有 DO .. LOOP 而 eForth 則僅提供 FOR .. NEXT,這是因為 DO..LOOP 的硬體難以有效實現,FOR ..NEXT 則精簡而有效率•因此並不鼓勵 DO..LOOP的使用•如果為了程式碼移植(PORTING)方便,USER
可自行加上 DO..LOOP 字集•這種不受限制的彈性與活力也是FORTH的一個特質•
back to top
3. 什麼是 FORTH 引擎(FORTH晶片)?
FORTH 引擎晶片,就是
FORTH
虛擬機器(FORTH Virtual Machine--FVM)的真實機器(Forth
Real Machine -- RVM)• 也就是以硬體直接運行這個FORTH機器的核心,及內建必要的核心指令,通常還會內建一些選擇性的加強指令•
back to top
4. 要如何看待 FORTH ?
看待 FORTH
FORTH
是一個經歷了30長期焠鍊的電腦語言,一種與電腦交談、教電腦如何工作、控制周邊以及探查電腦及其周邊的一套方法•因為不需要其他作業系統或電腦語 言的支援,便可以獨立運作,因此,他同時也被認為是一個電腦作業系統•
由於它的精簡與彈性,使得FORTH運用的境界,繫乎於使用者的知識與經驗•因為非常的精簡,因此入門並不困難,然而隨著使用者的知識與經驗的累積,使用者會不斷的發現,隱藏在這一系統之後的豐富智慧•這一種特性,造就了FORTH
的使用者不同於一般電腦語言使用者的特殊氣質•一般電腦語言的使用者,看待撰寫程式語言為『工作』,工作就是一種必須去完成的責任,甚至是交差了事的事,但FORTH的程式師,對 於程式的設計卻有很強烈的『創作』性質,因為這個語言把彈性的空間留給了程式師•就像把畫筆及顏料交給畫家一般•我們也可以這樣比喻,一般語言像是健身房裡的健身器材,種類繁多目的明顯,要練就哪一塊肌肉就用哪一台機器,而FORTH就像一套少林拳法,透過不斷的操練,熟練這一套拳法,就可以闖蕩電腦武林,行俠仗義快意恩仇了•這也是為什麼我們常開玩笑說易符像是一個『電腦少林寺』的原因•
back to top
5. 要如何學習 FORTH?
就像打拳,FORTH的每一個招式,看是簡單,但真能融會貫通,卻是有大用•任何技能,若不能付諸實踐,就難以不斷突破精進,因此學習 FORTH 除了在PC
上練就一套軟的工夫外,拿起硬體來做真正有用的東西,會有更大的樂趣與成就感•
在 IBMPC 上 以 FORTH 軟 體學習 FORTH:
IBM PC 上的 Win32Forth, 或易符公司的 WeForth 是一個簡單的容易開始•WeForth
是由易符公司以ASM撰寫的 Windows版的eForth,因此與 eE32-1 單晶中文電腦有透通 的移植性•WeForth 的程式除了 PC IO
相關的功能必須在eE32-1重調外,程式碼(SOURCE CODE)是互通的•
在單晶中文系統模組學習與 發展應用:
向易符公司買一套
『易符單晶中文系統模組一號(eCSOCM-1)』開始做自己真正的崁入式系統的應用•你將會訝異,用單晶中文電腦模組來做你要的東西,竟是這麼地 容易!contact:
www.eforth.com.tw
學 FORTH 要起頭了解並不難,但要能持續有成,最好是要選擇一個好題目,從這些題目的實踐過程中,熟練eFORTH方法和技巧,進而體驗以FORTH程式創作的精義,享受那種與電腦 和諧共舞的樂趣與成就感•畢竟做出有用的東西,就是一種最有效最具體的學習方法•
back to top
6. 如何取得 eForth 的技術資源?
關於 FORTH 可以尋求:
www.eforth.com.tw
易符學苑有丁陳老師龐大的FORTH資料
www.figtaiwan.org
台灣FIG 有許多FORTH同好可以向他們請益或可以交換心得•每個月都會在一個禮拜六的9:00-12:00 在中原大學 醫工系 5F
電腦教室聚會會議形式為自由發表一些FORTH的成果或心得•都 是免會參加,請注意 www.figtaiwan.org
的消息或主動登錄email便的收到開會通知•會長 陳爽 0920-714-028
[email protected]
易符公司提供有『單晶中文系統模組』,可從以下幾 個途徑取得支援:
a. 中文晶片討論區可以討論
b. 直接尋求易符的協助
公司 03-666-3322
陳昌江 (AJ, 阿江) 0931-849127
aj chen@eforth.com.tw
吳建佳 (WUJA 阿佳) 0920-884-707
[email protected]
丁陳漢蓀 Dr. C. H. Ting
[email protected]
back to top |