張宏烈 周 健 張素蘭 劉艷菊 王先超
1(齊齊哈爾大學(xué)計算機與控制工程學(xué)院 黑龍江齊齊哈爾 161006) 2(上海大學(xué)計算機工程與科學(xué)學(xué)院 上海 200072)3(阜陽師范學(xué)院數(shù)學(xué)與統(tǒng)計學(xué)院 安徽阜陽 236041)
三值光學(xué)處理器的MSD數(shù)據(jù)正/負(fù)值判斷器設(shè)計與實現(xiàn)
張宏烈1周 健1張素蘭2劉艷菊1王先超3
1(齊齊哈爾大學(xué)計算機與控制工程學(xué)院 黑龍江齊齊哈爾 161006)2(上海大學(xué)計算機工程與科學(xué)學(xué)院 上海 200072)3(阜陽師范學(xué)院數(shù)學(xué)與統(tǒng)計學(xué)院 安徽阜陽 236041)
(15845673377@163.com)
數(shù)值正/負(fù)或零判斷器是計算機比較數(shù)據(jù)大小的必備器件,隨著三值光學(xué)處理器中采用三態(tài)光信號表示信息的MSD(modified signed-digit)數(shù)并行加法器的出現(xiàn),研究三態(tài)光信號所表達(dá)數(shù)值的正/負(fù)或零值判斷器成為完善三值光學(xué)處理器的重要一環(huán).根據(jù)MSD數(shù)的特點,通過對三態(tài)光信號的變化規(guī)律與MSD數(shù)據(jù)的對應(yīng)關(guān)系的研究,提出了從一組三態(tài)光信號來判斷其表達(dá)的多位MSD數(shù)據(jù)正/負(fù)特性或零值的方法.將這一方法用于2個不定長MSD數(shù)據(jù)的差運算結(jié)果,實現(xiàn)了判別2個MSD數(shù)據(jù)的大小或相等.依據(jù)上述理論,建立了以偏振片、液晶和半反半透鏡為主要器件構(gòu)造的MSD數(shù)據(jù)判斷器結(jié)構(gòu),加以FPGA作為控制電路,實現(xiàn)了光電混合模式的3位MSD數(shù)據(jù)判斷器.通過實驗證明了該判斷器的有效性,進(jìn)而證明了其基本理論的正確性和結(jié)構(gòu)設(shè)計的可行性.
三值光學(xué)處理器;MSD數(shù)據(jù)正/負(fù)值判斷方法;判斷器結(jié)構(gòu)設(shè)計;判斷器硬件設(shè)計
計算機應(yīng)用需求的多元化和電子計算機硬件優(yōu)化接近極限促進(jìn)了人們對新型計算機研究的興趣.在這個背景下,量子計算機、生物計算機、超導(dǎo)計算機和光學(xué)計算機都有了長足的進(jìn)步.借助于液晶器件的成熟性,三值光學(xué)計算機后來居上,僅僅16年就從一個思想火花發(fā)展成最有特色的一種可用的新型計算機之一.它以數(shù)據(jù)位數(shù)眾多、數(shù)據(jù)總線可以任意分組使用和各個數(shù)據(jù)位的計算功能可以根據(jù)用戶的需要而重構(gòu),為我們提供了計算能力強大的新工具[1].然而,這種計算機目前還沒有控制程序轉(zhuǎn)移的能力,這嚴(yán)重阻礙了它在智能計算方面的應(yīng)用,造成這一缺陷的根本原因在于三值光學(xué)計算機還沒有零值判斷器和正/負(fù)值判斷器,進(jìn)而不能判斷2個數(shù)值的大小或2個邏輯量是否相同.近年來,作者對這一緊迫問題進(jìn)行了研究,在理論和技術(shù)2方面取得了成功,其成果將賦予三值光學(xué)計算機進(jìn)行智能計算的基本硬件,將其巨大的數(shù)據(jù)并行計算能力引入智能計算領(lǐng)域,形成功能強大的新型智能計算工具.
三值光學(xué)計算機的原理和結(jié)構(gòu)最早由上海大學(xué)金翊教授于2002年在其博士論文研究期間首先提出[2],其基本原理是:采用光的3個穩(wěn)定的狀態(tài)(水平偏振光、垂直偏振光和無光)來表示三值信息,且利用液晶的旋光性和偏振片的濾光性完成這3個穩(wěn)定光狀態(tài)的轉(zhuǎn)換,進(jìn)而實現(xiàn)二維并行光學(xué)運算.
三值光學(xué)計算機的研究歷經(jīng)16年,已經(jīng)相繼提出三值光學(xué)計算機數(shù)據(jù)位管理理論和技術(shù)[3]、可重構(gòu)性理論[4]、降值設(shè)計理論和技術(shù)[5]、多處理器共享雙空間存儲器技術(shù)[6]、內(nèi)存空間推移技術(shù)[7]等學(xué)術(shù)成果,并且構(gòu)建了相應(yīng)的硬件結(jié)構(gòu)和編寫了軟件系統(tǒng).在2014年,上海大學(xué)三值光學(xué)計算機團(tuán)隊建成了面向應(yīng)用研究的整機實驗系統(tǒng)——上大11(SD11);2016年又推出第1臺穩(wěn)定運行的三值光學(xué)計算機——上大16(SD16),該系統(tǒng)以眾多數(shù)據(jù)位可重構(gòu)的三值光學(xué)處理器為核心硬件,包含三值光學(xué)解碼器和編碼器[8-10]、MSD(modified signed-digit)加法器[11-13]、MSD數(shù)乘法器和除法器[14-15]等功能組件.2017年3月18日該團(tuán)隊又取得了決定性成果,完成三值光學(xué)計算機——SD16的36位并行加法器運算,標(biāo)志著三值光學(xué)可重構(gòu)處理器理論和技術(shù)已經(jīng)成熟,從此有了一種比電子計算機更優(yōu)秀的、工作原理不相同的計算機核心部件.
為了在數(shù)據(jù)位很多的加法運算中克服進(jìn)位過程帶來的延時問題,三值光學(xué)計算機采用了無進(jìn)位操作的MSD數(shù)二進(jìn)制并行加法器.這種加法器的所有數(shù)據(jù)位并行計算,因此加法計算的時間與數(shù)據(jù)位數(shù)無關(guān),突破了電子計算機加法器隨位數(shù)增加而無法并行完成加法的瓶頸,特別適合三值光學(xué)處理器利用眾多的數(shù)據(jù)位來計算大值數(shù)據(jù).MSD加法器也決定了三值光學(xué)計算機內(nèi)部的數(shù)值計算過程都必須采用MSD二進(jìn)制數(shù),而不是電子計算機采用的常規(guī)二進(jìn)制數(shù).因此,本文給出的數(shù)值判斷器件也都采用MSD二進(jìn)制數(shù)和三值邏輯量.
本文給出的0值和正負(fù)數(shù)判斷器也采用光的3個穩(wěn)定的狀態(tài)(偏振方向正交的2個偏振光態(tài)和無光)來表示三值信息、采用液晶陣列和偏振片構(gòu)造光狀態(tài)變換器、采用MSD數(shù)進(jìn)行數(shù)值計算,因此,在信息表達(dá)與基本元器件方面都與三值光學(xué)處理器相同,保證了它們可以作為支撐智能計算的核心硬件,直接并入三值光學(xué)計算機的硬件系統(tǒng).
常規(guī)計數(shù)法則中,N進(jìn)制有n個計數(shù)符號,分別表示值0到n-1,且逢n進(jìn)一,如果規(guī)定n進(jìn)制的每一位有n+r個計數(shù)符號(n,r為正整數(shù)),且仍然逢n進(jìn)一,則每一位可以表示n+r-1個值,稱為冗余計數(shù).顯然,在冗余計數(shù)中一個數(shù)值可能有幾個表示形式,這對人類使用很不方便,但在多值計算機中,卻有它的方便之處.在三值光學(xué)計算機中,采用n=2,r=1的冗余計數(shù)法,在這一類冗余計數(shù)法中,使用上最便利的一種計數(shù)法當(dāng)屬MSD計數(shù)法.
MSD數(shù)字系統(tǒng)是一種帶符號位的三值二進(jìn)制數(shù),早在1961年由Avizienis首次提出[16],并在1986年由Draker等人首次將其應(yīng)用到光學(xué)計算機中[17].對于任意的實數(shù)N,其MSD表示形式如下:
(1)
(2)
而數(shù)值-9的表示形式為
(3)
對比上面2個數(shù)可以發(fā)現(xiàn)MSD數(shù)具有3個特點:
1) MSD數(shù)不需要符號位.在MSD數(shù)表示中,對一個數(shù)的表示式按位取反就得到其相反數(shù),這個特點具有一般性.
2) MSD數(shù)無需補碼和反碼.正數(shù)和負(fù)數(shù)用同一表達(dá)式.
3) MSD數(shù)具有冗余性.在進(jìn)行加減運算時可以不進(jìn)行進(jìn)位或借位.
所以MSD數(shù)值的正負(fù)性取決于最高位非零值的正負(fù),最高位為1,該數(shù)為正數(shù);最高位為-1,該數(shù)為負(fù)數(shù);只有所有位均為零,該數(shù)才為零.
三值光學(xué)計算機處理數(shù)據(jù)的過程中,經(jīng)常會關(guān)心運算結(jié)果的正/負(fù)性,例如2個MSD數(shù)據(jù)做減法運算后,運算結(jié)果的正/負(fù)性就很重要,因為可以根據(jù)運算結(jié)果的符號,能夠進(jìn)一步確定這2個數(shù)孰大孰小,完成2個數(shù)大小的比較.又例如在除法操作之前,對除數(shù)必須進(jìn)行零值判斷,只有非零的除數(shù)才能進(jìn)行除法操作.理論和實驗已經(jīng)證明,MSD數(shù)據(jù)在進(jìn)行加減乘除運算后結(jié)果還是一個MSD數(shù)據(jù),所以需要從MSD數(shù)據(jù)表示形式分析入手[7-9].
三值光學(xué)計算機是將光強和光的偏振性結(jié)合起來表示三值信息的光電混合結(jié)構(gòu).三值光學(xué)計算機采用的MSD數(shù)計數(shù)體系中,用u(即-1)代表水平偏振光h,用1代表垂直偏振光v,用0代表無光態(tài)w.MSD數(shù)的符號u可以表達(dá)負(fù)數(shù),故MSD數(shù)不需要增設(shè)符號位,相應(yīng)地也就沒有補碼和反碼,其數(shù)值的正/負(fù)性取決于最高非零值位的正負(fù),最高非零位為1則該數(shù)為正數(shù),最高非零位為-1則該數(shù)為負(fù)數(shù),只有所有位均為零則該數(shù)才為零.根據(jù)MSD數(shù)的特點,可以得出任意一個MSD數(shù)的正/負(fù)值判斷的邏輯表,進(jìn)而推導(dǎo)正/負(fù)值判斷方法.
例如,有3位MSD數(shù)X=A3A2A1,其中A3,A2和A1分別表示從高到低X各個位上的數(shù)值,用Y表示數(shù)X的正負(fù)性,且X為正數(shù)時Y=1,X為負(fù)數(shù)時Y=u,X為零值時Y=0,可以得到3位MSD數(shù)正負(fù)性判斷的邏輯表,如表1所示:
Table 1 The Logic Table of the Positive/Negative to Determine for 3-bit MSD Data
MSD數(shù)在三值光學(xué)計算機中有明確的光信號表達(dá)方式,若用光的3種狀態(tài)對表1內(nèi)容進(jìn)行替換,就會得到3位并行三態(tài)光數(shù)據(jù)的所有可能組合狀態(tài),以及每個組合對應(yīng)的最高位光狀態(tài),如表2所示.顯然,N位三態(tài)光信號的最高位的光狀態(tài)表達(dá)著該數(shù)據(jù)的正/負(fù)性,因此,表2列出了3位MSD數(shù)據(jù)的正/負(fù)或零值與3位光信號的組合之間的對應(yīng)關(guān)系.如果將MSD數(shù)據(jù)正/負(fù)或零值作為判斷結(jié)果,將三態(tài)光狀態(tài)組合作為判斷依據(jù),根據(jù)表2反映出的判斷結(jié)果與輸入光狀態(tài)之間存在的關(guān)系,可以很容易地找出MSD數(shù)據(jù)的正/負(fù)值或零值判斷的規(guī)律,這就是MSD數(shù)據(jù)判斷器設(shè)計的理論依據(jù).
Table 2 The Logic Table of the Positive/Negative to Determine for 3-bit Tri-State Optical Data
本文所要設(shè)計的判斷器,其功能是判斷具有三值多位并行的MSD數(shù)據(jù)為正數(shù)還是負(fù)數(shù)或者為零值.從判斷器的任務(wù)出發(fā),實際上可以分別設(shè)計零值判斷器、正值判斷器和負(fù)值判斷器來完成判斷器的每項功能.
4.1 零值判斷器
分析表2中的數(shù)據(jù)可以發(fā)現(xiàn),MSD數(shù)據(jù)取值為零,只有一種情況.因此若進(jìn)行零值判斷,只需要選擇一個處理基元,其基元表如表3所示:
Table 3 Zero Value Judgment Processing Unit 1表3 零值判斷處理基元之一
按照降值設(shè)計理論,可定義輸入為無光態(tài)時,輸出為垂直偏振光態(tài)V,否則輸出為無光狀態(tài),則其基元表變?yōu)楸?的形式.
Table 4 Zero Value Judgment Processing Unit 2表4 零值判斷處理基元之二
從表4所列出的邏輯關(guān)系,可以提出一個合適的硬件設(shè)計方案來判斷MSD數(shù)據(jù)是否為零值,其光路結(jié)構(gòu)原理如圖1所示:
Fig. 1 The principle diagram of optical path structure of zero value discriminator圖1 零值判斷器光路結(jié)構(gòu)原理圖
圖1為3個數(shù)據(jù)位的零值判斷光路結(jié)構(gòu),當(dāng)需要判斷的數(shù)據(jù)位數(shù)達(dá)到n位時,其光路結(jié)構(gòu)如圖2所示,其原理與圖1所示結(jié)構(gòu)的原理相同.
Fig. 2 The principle diagram of optical path structure of n -bit zero value discriminator圖2 n位零值判斷器光路結(jié)構(gòu)原理圖
圖2的結(jié)構(gòu)雖然也可以實現(xiàn)零值判斷,但是考慮到目前的三值光學(xué)處理器的數(shù)據(jù)位數(shù)已達(dá)上千位,當(dāng)判斷的數(shù)據(jù)位數(shù)增加時,對應(yīng)的偏振片和液晶的疊加數(shù)量也會相應(yīng)增加.例如,當(dāng)待判定的數(shù)據(jù)位數(shù)達(dá)到300位時,則需要同樣數(shù)量的液晶和同樣數(shù)量的垂直偏振片同時疊放在一條直線上,其厚度可能已達(dá)到30 cm甚至更多.由于其尺寸已明顯占用了太多的空間,不便于實現(xiàn),需要進(jìn)行拆分,如對n位零值判斷器結(jié)構(gòu)經(jīng)過2拆分后,得到了如圖3所示的光路結(jié)構(gòu).
Fig. 3 The principle diagram of optical path structure of 2-way split圖3 2拆分后光路結(jié)構(gòu)原理圖
圖3中的m1和m2為迭合器,由半反半透鏡和全反射鏡組成.經(jīng)過n/2次細(xì)分后,就得到了類似于運算器的排列,其相應(yīng)的處理基元的光學(xué)結(jié)構(gòu)如圖4所示:
Fig. 4 The principle diagram of the structure of n -bit zero value discriminator圖4 n位零值判斷器結(jié)構(gòu)原理圖
上述零值判斷器的結(jié)構(gòu)均為有光源結(jié)構(gòu).如果提供光源困難,還可對該結(jié)構(gòu)進(jìn)行簡化去掉光源,設(shè)計一種無光源結(jié)構(gòu).由于三值光學(xué)運算器輸出的每個數(shù)據(jù)位共有4個液晶像素位,且2個像素位為水平偏振光路,2個像素位為垂直偏振光路,將每個數(shù)據(jù)位的水平偏振光的光路合并為一路,垂直偏振光的光路合并為一路,如圖5所示:
Fig. 5 The principle diagram of the structure of 3-bit zero value discriminator for no light source圖5 3位零值判斷器無光源結(jié)構(gòu)原理圖
4.2 正值判斷器
分析表2的數(shù)據(jù)可以發(fā)現(xiàn),在3位MSD數(shù)據(jù)的所有組合中,數(shù)據(jù)最高位為垂直偏振光V,即數(shù)據(jù)為正數(shù)的情況,共有13種組合,如表5所示.從表5列出的正值判斷的邏輯關(guān)系,可以提出一個硬件設(shè)計方案以實現(xiàn)對MSD數(shù)據(jù)是否為正數(shù)的判斷,其光路結(jié)構(gòu)原理如圖6所示.
Table 5 The Logic Table of the Positive Value to Determine for 3-bit MSD Data
Fig. 6 The principle diagram of the structure of the positive value discriminator圖6 正值判斷器結(jié)構(gòu)原理圖
Table 6 The Table of Working Principle for the Positive Value Discriminator
圖6所示的3位MSD數(shù)據(jù)正值判斷器結(jié)構(gòu)也易于擴(kuò)展到n位MSD數(shù)據(jù)的情形,只要將輸入端和輸出端均擴(kuò)展到n位即可.其原理圖如圖7所示:
Fig. 7 The structure of the positive value discriminator for n -bit MSD data圖7 n位MSD數(shù)據(jù)的正值判斷器結(jié)構(gòu)
4.3 負(fù)值判斷器
分析表2的數(shù)據(jù)可以發(fā)現(xiàn),在3位MSD數(shù)據(jù)的所有組合中,數(shù)據(jù)最高位為水平偏振光h,即MSD數(shù)據(jù)為負(fù)數(shù)的情況,同樣共有13種組合,如表7所示.
從表7列出的負(fù)值判斷的邏輯關(guān)系,可以提出一個硬件設(shè)計方案以實現(xiàn)對MSD數(shù)據(jù)是否為負(fù)數(shù)的判斷,其光路結(jié)構(gòu)原理如圖8所示.
Table 7 The Logic Table of the Negative Value to Determine for 3-bit MSD Data
Fig. 8 The principle diagram of the structure of the negative value discriminator圖8 負(fù)值判斷器結(jié)構(gòu)原理圖
Fig. 9 The principle diagram of the structure of the n -bit negative value discriminator圖9 n位負(fù)值判斷器結(jié)構(gòu)原理圖
可見,負(fù)值判斷器結(jié)構(gòu)與正值判斷器結(jié)構(gòu)非常相似,只是將水平偏振片和垂直偏振片的位置互換了一下.在負(fù)值判斷器結(jié)構(gòu)中,當(dāng)較高位有垂直偏振光輸入時,將使更低位的所有液晶旋光,低位的輸出均為無光態(tài).此時,若更高位有水平偏振光輸入時,能使Y2輸出亦為水平偏振光,那么輸入的數(shù)值X為負(fù)值.若更高位沒有光信號輸入,則Y2輸出為無光態(tài),那么輸入的數(shù)值X為非負(fù)數(shù).該結(jié)構(gòu)能夠?qū)崿F(xiàn)對數(shù)據(jù)是否為負(fù)數(shù)作出判斷,稱為負(fù)值判斷器.圖8所示的3位負(fù)值判斷器結(jié)構(gòu)也易于擴(kuò)展到n位數(shù)的情形,其n位負(fù)值判斷器的結(jié)構(gòu)如圖9所示.
4.4 MSD數(shù)據(jù)判斷器
事實上,在應(yīng)用中為了判斷MSD數(shù)據(jù)的正/負(fù)性或零值,而分別設(shè)計3個判斷器是很不經(jīng)濟(jì)的辦法,只有設(shè)計一個判斷器解決所有問題才是有效可行的.為此對于4.1~4.3節(jié)提出的3個判斷器的設(shè)計方案進(jìn)行綜合,設(shè)計具有判斷MSD數(shù)據(jù)正/負(fù)性或零值等全部功能的判斷器,稱之為MSD數(shù)據(jù)判斷器.
4.1~4.3節(jié)設(shè)計的判斷器中,正值判斷器只能判斷輸入端的MSD數(shù)據(jù)最高位是否為正數(shù)(垂直偏振光),但不能確定某一非正數(shù)究竟是零值/負(fù)數(shù)(無光態(tài)/水平偏振光);負(fù)值判斷器只能判斷輸入端的MSD數(shù)據(jù)最高位是否為負(fù)數(shù)(水平偏振光),但不能確定某一非負(fù)數(shù)究竟是零值/正數(shù)(無光態(tài)/垂直偏振光).考察圖7所示的正值判斷器結(jié)構(gòu)和圖9所示的負(fù)值判斷器結(jié)構(gòu),它們均只能判斷一種確定的光狀態(tài)的特點,若將水平偏振光和垂直偏振光通路都連接到相應(yīng)的輸出端,同時保持相應(yīng)數(shù)據(jù)位之間的控制關(guān)系,那么改進(jìn)后的判斷器結(jié)構(gòu)就可以根據(jù)輸入情況,輸出對應(yīng)的水平偏振光或垂直偏振光2種光狀態(tài),即可以判斷數(shù)據(jù)的正值或負(fù)值2種情況,如圖10所示:
Fig. 10 The principle diagram of the structure of MSD data discriminator圖10 MSD數(shù)據(jù)判斷器結(jié)構(gòu)原理圖
圖10所示的判斷器具有2個輸出端Y1和Y2,Y1和Y2的組合邏輯如表8所示.在某一時刻,Y1和Y2只要有一個為有光態(tài),那么MSD數(shù)據(jù)判斷器就可以判斷出輸入光數(shù)據(jù)的正負(fù)性,即Y1有光輸入則MSD數(shù)據(jù)為正值,Y2有光輸入則MSD數(shù)據(jù)為負(fù)值.但是Y1和Y2還有2個組合狀態(tài),可以推斷出Y1和Y2若都為無光態(tài),則輸入MSD數(shù)據(jù)肯定為零值,所以圖10判斷器是一個能夠判斷MSD數(shù)據(jù)是否為正數(shù)/負(fù)數(shù)和零值等所有功能的判斷器,符合MSD數(shù)據(jù)判斷的功能要求.
Table 8 The Combinational Logic Table of Y1 and Y2表8 Y1和Y2組合邏輯表
若A3,A2均無光信號輸入而A1有光信號輸入時,其光信號能直接到達(dá)相應(yīng)的輸出端,輸入為水平偏振光時,Y2輸出為有光態(tài),輸入的數(shù)值X為負(fù)數(shù);輸入為垂直偏振光時,Y1輸出為有光態(tài),輸入的數(shù)值X為正數(shù).
僅當(dāng)Y1和Y2均無光信號輸出時,輸入的數(shù)值X才為零值.
所以圖10所示的判斷器結(jié)構(gòu)就是一個典型的MSD數(shù)據(jù)判斷器,分析其工作原理,可以歸納出MSD數(shù)據(jù)判斷器具有3個顯著特點:
1) 自動識別符號位能力
圖10所設(shè)計的MSD數(shù)據(jù)判斷器具有自動識別N位光輸入信號最高符號位的能力.這個能力是由MSD數(shù)據(jù)判斷器自身結(jié)構(gòu)決定的,對于N位光信號輸入端,其輸入數(shù)據(jù)的有效位數(shù)在0~N-1之間,具有不同位數(shù)的數(shù)據(jù),其最高位也是不固定的,根據(jù)圖10判斷器結(jié)構(gòu)可以容易分析出,無論輸入光信號具有多少位、光數(shù)據(jù)的最高位處在輸入端的哪一位,判斷器的輸出光態(tài)信息保證與輸入光信號最高位的光態(tài)一致.這就為處理MSD數(shù)據(jù)時省略了尋找數(shù)據(jù)最高位位置環(huán)節(jié),加快三值光學(xué)處理器的處理數(shù)據(jù)的速度.
2) 自動屏蔽低位數(shù)據(jù)能力
在判斷MSD數(shù)據(jù)最高位符號時,除最高位之外,需要考慮其他低位數(shù)據(jù)對判斷結(jié)果的影響.圖10所設(shè)計的MSD數(shù)據(jù)判斷器,通過自身結(jié)構(gòu),很好地化解了這個問題.判斷器設(shè)計中,最高位數(shù)據(jù)的輸出結(jié)果直接影響低位的液晶顯示器的旋光性,控制低位輸入端側(cè)的光信號,只允許輸出與最高位數(shù)據(jù)一致的信息,屏蔽不一致的信息.因此MSD數(shù)據(jù)判斷器具有自動屏蔽低位數(shù)據(jù)的能力.
3) 硬件結(jié)構(gòu)可擴(kuò)展性
該電路具有簡單方便的可擴(kuò)展性.因為三值光學(xué)處理器數(shù)據(jù)位眾多,可以達(dá)到成千上萬位,對于數(shù)以千位的MSD數(shù)據(jù)判斷器結(jié)構(gòu)的設(shè)計并不困難,只需對判斷的位數(shù)進(jìn)行擴(kuò)展,最高位的判斷方法原理沒有變化.圖10所示的3位判斷器結(jié)構(gòu)擴(kuò)展到n位數(shù)的情形,如圖11所示.
但是,針對圖11中的n位判斷器結(jié)構(gòu),在硬件設(shè)計中也存在一個明顯問題,由于采用的液晶層數(shù)將會很多,這勢必會帶來光強的衰減問題.1)在不含半反半透鏡情況下,由于折射反射等原因,光通過液晶(包括透過其他任何非理想介質(zhì))肯定會有衰減,所以透過一層液晶和2層偏振片當(dāng)然也就會有衰減,如果液晶和偏振片層數(shù)巨大,勢必會使光強衰減非常嚴(yán)重,以至于感光器件能否探測到有光.2)在含半反半透鏡情況下,半反半透鏡每次將光的一半反射、一半透過,如果一束光經(jīng)過n個半反半透鏡,那么光強就只剩下原來的12n,這個光強也不一定能被感光器件探測到.所以圖11中的n位判斷器結(jié)構(gòu)研究方案,理論上是可行的,在真正設(shè)計時還要考慮光強的衰減問題,通過增加其他硬件提高光的傳輸強度.
Fig.11 The principle diagram of the structure of N-bit tri-state optical data discriminator圖11 N位三態(tài)光數(shù)據(jù)判斷器結(jié)構(gòu)原理圖
根據(jù)圖10所示的MSD數(shù)據(jù)判斷器結(jié)構(gòu)原理圖,可以選擇目前市場上的已有元器件或芯片,設(shè)計出符合邏輯關(guān)系的各種各樣的判斷器.本設(shè)計的硬件結(jié)構(gòu)由2部分組成:光處理部分(light processing section, LPS)和FPGA部分,3位MSD數(shù)據(jù)判斷器硬件結(jié)構(gòu)框架圖如圖12所示.在這個設(shè)計中,考慮到半反半透鏡的尺寸較大且不易精確調(diào)整位置,故將其對光信號的疊加作用改為:用光電管感知每束光的光狀態(tài),再將光電管的輸出電信號用FPGA中的電路進(jìn)行疊加的方法,即將半反射鏡的物理功能用感光管加電路來替代.
Fig. 12 The hardware frame structure diagram of 3 b MSD data discriminator圖12 3位MSD數(shù)據(jù)判斷器硬件結(jié)構(gòu)框架圖
5.1 硬件結(jié)構(gòu)設(shè)計與實現(xiàn)
FPGA開發(fā)板采用的是Altera Cyclone Ⅲ系列,主芯片為780pin的BGA封裝的EP3C120F780.以3位MSD數(shù)據(jù)為例的判斷器共有12個光信號輸入端,若將處理器的每個數(shù)據(jù)位的4個輸出端中的2個水平光信號通路和2個垂直光信號通路進(jìn)行合并,則3個數(shù)據(jù)位的判斷器連接到FPGA的輸入端就簡化為6個;另外每個輸入光信號在信號傳遞過程中,受到液晶是否旋光控制,而液晶狀態(tài)需要一個反饋信號來控制,該信號通過FPGA輸出獲得,針對6個輸入光信號需要6個液晶進(jìn)行控制,所以需要FPGA以輸出方式提供6個反饋控制信號;最后液晶正常工作需要一個穩(wěn)定的方波電壓信號,它也是通過FPGA輸出來提供的.可見,為了滿足判斷器中光處理器部分的正常工作要求,F(xiàn)PGA需要提供至少13個輸入輸出引腳,本設(shè)計中所選擇的FPGA開發(fā)板能夠完全滿足設(shè)計要求.對于判斷器的判斷結(jié)果,本設(shè)計利用FPGA開發(fā)板的現(xiàn)有資源,在40個可用引腳的左邊,有2個表示狀態(tài)的發(fā)光二極管LED13和LED15,用以指示判斷結(jié)果.FPGA與光處理部分信號傳遞與邏輯控制引腳連接圖,如圖13所示:
Fig. 13 The connection diagram between FPGA and optical processing part of the pins圖13 FPGA與光處理部分引腳連接圖
光學(xué)處理部分輸出的光信號需要轉(zhuǎn)換成電信號才能被FPGA識別和處理,所以需要設(shè)計一個光電轉(zhuǎn)換部分.本設(shè)計中,光電轉(zhuǎn)換部分采用光敏電阻和雙運放LM358P放大比較器2部分組成.其中光敏電阻型號為MG45,其特性為:當(dāng)無光照射到光敏電阻上時,其暗阻阻值在幾百kΩ左右;當(dāng)有光照時,其亮阻阻值將為幾kΩ,光敏電阻接收到的光強越強,其阻值就越低,有時甚至只有幾百Ω.雖然MG45光敏電阻響應(yīng)時間較慢,在ms和s之間,實際應(yīng)用并不合適,但是不影響本實驗驗證判斷器原理的正確性和可行性的目的.
光敏電阻和LM358P連接的電路原理圖如圖14所示:
Fig. 14 The principle diagram of the photoelectric conversion circuit圖14 光電轉(zhuǎn)換電路原理圖
圖14中LM358P引腳2為反相輸入端,引腳3為同相輸入端,當(dāng)LM358P的反相輸入端電位高于同相輸入端電位時,輸出電壓Vo為低電平;當(dāng)LM358P的反相輸入端電位低于同相輸入端電位時,輸出電壓Vo為高電平.RL表示光敏電阻,當(dāng)光敏電阻受到光照時,其阻值發(fā)生改變.當(dāng)無光照射到光敏電阻時,(R2R1)>(R3R4),放大器輸出為0,Vo輸出低電平;而當(dāng)有光照射到光敏電阻時,其阻值迅速減小,使(R2R1)<(R3R4),輸出高電平,Vo=Vcc,實現(xiàn)了通過光敏電阻控制Vo輸出高低電平.
MSD數(shù)據(jù)判斷器是對三值光學(xué)運算器的光信號輸出結(jié)果進(jìn)行正負(fù)性判斷的,理論上應(yīng)該將MSD數(shù)據(jù)判斷器直接連接到運算器的輸出端,但是由于器件原因暫時無法實現(xiàn).而本實驗采用的是LED發(fā)光二極管的亮與滅來代替運算器的每個數(shù)據(jù)位相應(yīng)的光信號輸出狀態(tài),通過外加的手動開關(guān)控制相應(yīng)的光信號的輸入.三值光學(xué)運算器每個數(shù)據(jù)位的4個像素位,同時最多只能有一個像素位輸出相應(yīng)的光狀態(tài),對應(yīng)本實驗的每個數(shù)據(jù)位的光信號輸入端,最多也只能允許有一個光信號輸入.為了避免因人為誤操作而出現(xiàn)使同一個數(shù)據(jù)位有不止一種輸入光狀態(tài)的非正常現(xiàn)象,設(shè)置了開關(guān)結(jié)構(gòu).該結(jié)構(gòu)中,每個數(shù)據(jù)位采用2個獨立光源,一個單刀雙擲開關(guān)和一個單刀單擲開關(guān),以保證每個數(shù)據(jù)位不會出現(xiàn)2個光輸入端出現(xiàn)同時有光狀態(tài)的現(xiàn)象.開關(guān)控制電路圖如圖15所示:
Fig. 15 The control circuit of single pole double throw switch圖15 單刀雙擲開關(guān)控制電路圖
圖15中,開關(guān)SW1斷開時,無論SW2連接到哪一個端口,LED的D1和D2均不發(fā)光,表示該光信號對應(yīng)的數(shù)據(jù)位的輸入為無光態(tài).開關(guān)SW1閉合后,當(dāng)SW2連接到上端口時,發(fā)光二極管LED的D1亮而D2不亮,表示該數(shù)據(jù)位的輸入光狀態(tài)為水平偏振光;當(dāng)SW2連接到下端口時,發(fā)光二極管LED的D1不亮而LED的D2亮,表示該數(shù)據(jù)位的輸入光狀態(tài)為垂直偏振光.
液晶部分采用的是EDC006大尺寸TN型正顯7段段碼液晶,其尺寸為72.6×52.8 mm2,工作電壓為5 V,采用靜態(tài)驅(qū)動方式即可.圖16所示的是一個電極型筆段式液晶驅(qū)動的電路原理圖、真值表及波形圖.
圖16(a)中是一個液晶的異或門驅(qū)動電路,振蕩脈沖信號直接輸入到異或門的輸入端A,同時連接到段碼液晶的背電極端C端,輸入端B可以接高低電平,用于控制液晶電極的亮與滅.圖16(b)為異或門的真值表.由圖16(b)可知,當(dāng)B為高電平時,A和C兩端的電平剛好一高一低,當(dāng)A輸入具有適當(dāng)頻率和適當(dāng)幅度電壓的方波信號時,即可滿足液晶的驅(qū)動電壓要求,使液晶相應(yīng)段碼顯示而呈黑色;而當(dāng)B為低電平時,A和C兩端電壓同為高電平或低電平,沒有電位差,液晶不顯示,使其呈透明狀能透光.實驗所使用的FPGA輸出的電壓為2.5 V,而液晶所需要的工作電壓為5 V,剛好滿足要求.
Fig. 16 The drive principle and waveform of segment code LCD圖16 段碼液晶的驅(qū)動原理和波形圖
實際電路中,為了方便觀察和控制,我們采用了3片段碼液晶EDC006,單片液晶的段碼分布如圖17所示,每片使用其中的2個段碼,表示三值數(shù)據(jù)的一個位,比如用A段表示數(shù)據(jù)位的A3v光通路,D段表示數(shù)據(jù)位A3h光通路.
Fig. 17 The schematic diagram of segment code LCD EDC006圖17 段碼液晶EDC006示意圖
EDC006液晶模塊的背面有偏振片,正面也有偏振片,中間是液晶模塊,對應(yīng)的引腳是用電信號來控制各個段碼的亮與滅的.
這里需要說明的是:在同一個數(shù)據(jù)位選擇了相同類型的液晶,但是并不影響本實驗的結(jié)果.因為最終所有光信號都轉(zhuǎn)換為電信號,通過FPGA進(jìn)行電處理,所以該方案仍是可行的.
5.2 Quartus Ⅱ軟件仿真
本文所提出的MSD數(shù)據(jù)判斷器結(jié)構(gòu),其工作原理也可以通過軟件仿真來驗證.因為本設(shè)計使用的開發(fā)板為Cyclone Ⅲ系列,所以采用Altera提供的Quartus Ⅱ平臺非常合適.Quartus Ⅱ設(shè)計工具支持VHDL,Verilog的設(shè)計流程,其內(nèi)部嵌有VHDL,Verilog邏輯綜合器.Quartus Ⅱ也具備仿真功能,支持第三方的仿真工具,如ModelSim.
1) 基于Quartus Ⅱ軟件平臺,在新建立的工程設(shè)置窗口中,逐一選擇Cyclone Ⅲ開發(fā)板、引腳780pin、芯片型號為EP3C120F780C7等參數(shù),如圖18所示,完成開發(fā)環(huán)境配置參數(shù)的設(shè)置.
Fig. 18 The schematic diagram of chip selection圖18 芯片選型圖片示意圖
2) 在工程建立完成后,建立Verilog程序的文件,并根據(jù)功能需求編寫相應(yīng)的程序,所編寫程序的核心部分包括:液晶控制信號的異或門程序、輸入信號優(yōu)先級的邏輯程序等.所用液晶工作頻率為32 Hz左右,而FPGA開發(fā)板自帶的時鐘為125 MHz,所以需對該時鐘信號進(jìn)行4分頻,通過編寫Verilog程序,以計數(shù)器方式精確分頻來實現(xiàn).
3) 查詢FPGA開發(fā)板的相關(guān)手冊,配置引腳再編譯完成后,在新建的VWF文件中導(dǎo)入之前編譯生成的QSF文件,設(shè)置結(jié)束時間為60 μs,單格時間間隔為1 μs,運行仿真后,其結(jié)果如圖19所示.
Fig. 19 The software simulation results diagram圖19 軟件仿真結(jié)果示意圖
圖19中,y2和y1均為低電平有效,其他均為高電平有效.FPGA開發(fā)板的硬件電路定義了低電平時,綠色發(fā)光二極管D13和D15亮,高電平時滅.為了降低成本和盡量減少外部接線,選擇的開發(fā)板上用戶可自己定義這2個二極管的亮和滅作為觀察判斷結(jié)果的依據(jù).
5.3 測試結(jié)果分析
根據(jù)5.1節(jié)所述的硬件設(shè)計方案進(jìn)行硬件電路的連接和調(diào)試成功后,將事先編寫的程序下載到FPGA芯片上,并將相應(yīng)的輸入輸出貼好對應(yīng)的標(biāo)簽,以便觀察結(jié)果.硬件器件連接圖如圖20所示:
Fig. 20 The hardware connection diagram圖20 硬件連接示意圖
圖20中左側(cè)的3塊液晶用來表示3個數(shù)據(jù)位的輸入狀態(tài),最上面的一塊表示最低位,中間的表示次高位,下面的表示最高位.每個液晶模塊用2個對應(yīng)的發(fā)光二極管的亮和滅來表示每個數(shù)據(jù)位的輸入光狀態(tài).當(dāng)液晶上段對應(yīng)的紅色發(fā)光二極管亮?xí)r,表示該數(shù)據(jù)位輸入的是水平偏振光;當(dāng)液晶模塊下段對應(yīng)的紅色發(fā)光二極管亮?xí)r,表示該數(shù)據(jù)位輸入的是垂直偏振光;當(dāng)該液晶模塊對應(yīng)的2個紅色發(fā)光二極管都不亮?xí)r,表示無光輸入.這2個紅色發(fā)光二極管采用了單刀單擲的總開關(guān)和單刀雙擲的選擇開關(guān),所以是不會出現(xiàn)單個液晶模塊對應(yīng)的2個發(fā)光二極管同時亮的現(xiàn)象.
在右邊的FPGA開發(fā)板上,在2個綠色LED旁貼了“+”號和“-”號,用來表示正負(fù)值的判斷結(jié)果.貼有“+”號的LED燈亮,表示輸入的數(shù)據(jù)為正數(shù);貼有“-”號的LED燈亮,表示輸入的數(shù)據(jù)為負(fù)數(shù);當(dāng)2個LED燈都不亮?xí)r,表示輸入的數(shù)據(jù)為零值.
同時,當(dāng)最高有光輸入的數(shù)據(jù)位,該位的光狀態(tài)能使FPGA的輸出點亮該位及更低位的表示與其相異的偏振光態(tài)的相應(yīng)液晶,以屏蔽掉表示不同輸入光狀態(tài)的數(shù)據(jù)位的光通路,使該位及更低位的數(shù)據(jù)位的輸出只能為表示該偏振光態(tài)的類型.
比如,最高位表示垂直偏振光的a6燈亮,則a6的輸入將點亮a5,a3,a1對應(yīng)的液晶,使其屏蔽掉該位表示水平偏振光的a5,a3,a1的輸入光狀態(tài).同時點亮FPGA開發(fā)板上貼有正號的LED燈D15,表示該數(shù)為正.
當(dāng)最高位表示水平偏振光的a5燈亮,則a5的輸入將點亮a6,a4,a2對應(yīng)的液晶,使其屏蔽掉該位表示垂直偏振光的a6,a4,a2的輸入光狀態(tài).同時點亮FPGA開發(fā)板上的貼有負(fù)號的LED燈D13,表示該數(shù)為負(fù).
當(dāng)最高位輸入為無光態(tài),則數(shù)的正負(fù)由次高位的輸入光狀態(tài)決定.
當(dāng)次高位表示垂直偏振光的a4燈亮?xí)r,a4的輸入將點亮a3,a1對應(yīng)的液晶,使其屏蔽掉該位表示垂直偏振光的a3,a1的輸入光狀態(tài).同時點亮FPGA開發(fā)板上的貼有正號的LED燈D15,表示該數(shù)為正.
當(dāng)次高位表示水平偏振光的a3燈亮?xí)r,a3的輸入將點亮a4,a2對應(yīng)的液晶,使其屏蔽掉該位表示垂直偏振光的a4,a2的輸入光狀態(tài).同時點亮FPGA開發(fā)板上的貼有負(fù)號的LED燈D13,表示該數(shù)為負(fù).
以此類推.僅當(dāng)這3 b輸入均為無光態(tài)時,此時液晶都不亮,2個表示正負(fù)結(jié)果的LED燈也都不亮,表示判斷結(jié)果為零值.
本次實驗對3個數(shù)據(jù)位的27種狀態(tài)組合全部進(jìn)行了驗證,并對實驗測試結(jié)果做了記錄.各種輸入狀態(tài)下,實驗測試結(jié)果與理論分析結(jié)果之間的對照關(guān)系如表9所示,表9中亮用1表示,滅用0表示,結(jié)果中的正數(shù)用PN表示,負(fù)數(shù)用NN表示,零用zero表示.由表9可知,實驗測試結(jié)果與理論分析結(jié)果完全一致,證實了理論的正確性和設(shè)計的可行性.
Table 9 The Compared Table Between Experimental Results and Theoretical Results
三值光學(xué)計算機的MSD數(shù)據(jù)判斷器是在2014年前后研究“運算例程”時所遇到的新課題,截止到目前還未見到相關(guān)的報道,本文首次提出“三值光學(xué)計算機的MSD數(shù)據(jù)判斷器”的設(shè)計思想并實現(xiàn).而MSD數(shù)據(jù)判斷器是三值光學(xué)計算機的重要部件之一,它可以解決MSD數(shù)據(jù)的正/負(fù)值判斷和零值判斷問題.對MSD數(shù)據(jù)判斷器的研究,必將加快三值光計算機整體進(jìn)入應(yīng)用階段的步伐.
雖然本文已設(shè)計出了固定位長的MSD數(shù)據(jù)判斷器,可供暫時解決三值光學(xué)計算機無判斷器的難題.但是仍然存在很多的不足,比如此次設(shè)計的判斷器都是單獨測試驗證的,單個數(shù)據(jù)位都是以2個光輸入端為例設(shè)計的,使用在三值光學(xué)計算機上時,每個數(shù)據(jù)位都是4個光狀態(tài)輸入端,則相應(yīng)的判斷器的輸入端應(yīng)增加成4個輸入端,同時隨著輸入端數(shù)量的增加,數(shù)據(jù)位的對應(yīng)問題以及半反半透鏡和全反射透鏡的對應(yīng)問題就越發(fā)明顯.如何解決上述問題將是接下來要考慮的問題.
另外,三值光學(xué)處理器的數(shù)據(jù)位現(xiàn)已達(dá)到數(shù)千位,而且任一數(shù)據(jù)位隨時可以重構(gòu),同時可以分配給不同的運算器同時使用,這就要求理想的三值光學(xué)計算機的MSD數(shù)據(jù)判斷器也最好根據(jù)處理器的重構(gòu)和數(shù)據(jù)位的重新分配,做相應(yīng)的調(diào)整以使其滿足并行判斷的需求,即MSD數(shù)據(jù)判斷器的可重構(gòu)性.對判斷器可重構(gòu)進(jìn)一步的研究,將是未來的主要工作內(nèi)容之一.
[1]Jin Yi, Xu Qun, Ouyang Shan et al. Structured data computer—Application characteristics of a ternary optical computer[J]. Scientia Sinica Informationis, 2016, 46(3): 311-324 (in Chinese)
(金翊, 徐群, 歐陽山, 等. 結(jié)構(gòu)量計算機——三值光學(xué)計算機的應(yīng)用特點[J]. 中國科學(xué): 信息科學(xué), 2016, 46(3): 311-324)
[2]Jin Yi. Ternary optical computer principle and architecture[D]. Xi’an: Northwestern Polytechnical University, 2002 (in Chinese)
(金翊. 三值光計算機原理和結(jié)構(gòu)[D]. 西安: 西北工業(yè)大學(xué)博士學(xué)位論文, 2002)
[3]Jin Yi, Ouyang Shan, Song Kai, et al. Management of many data bits in ternary optical computers[J]. Scientia Sinica Informationis, 2013, 43(3): 361-373 (in Chinese)
(金翊, 歐陽山, 宋凱, 等. 三值光學(xué)處理器的數(shù)據(jù)位管理理論和技術(shù)[J]. 中國科學(xué): 信息科學(xué), 2013, 43(3): 361-373)
[4]Jin Yi, Wang Hongjian, Ouyang Shan, et al. Principles, structures, and implementation of reconfigurable ternary optical processors[J]. Scientia Sinica Informationis, 2012, 42(6): 778-788 (in Chinese)
(金翊, 王宏健, 歐陽山, 等. 可重構(gòu)三值光學(xué)處理器的原理、基本結(jié)構(gòu)和實現(xiàn)[J]. 中國科學(xué): 信息科學(xué), 2012, 42(6): 778-788)
[5]Yan Junyong, Jin Yi, Zuo Kaizhong. Reducing design theory of non-incoming bit operators and its application in three-valued light computer[J]. Scientia Sinica Informationis, 2008, 38(12): 2112-2122 (in Chinese)
(嚴(yán)軍勇, 金翊, 左開中. 無進(jìn)(借)位運算器的降值設(shè)計理論及其在三值光計算機中的應(yīng)用[J]. 中國科學(xué): 信息科學(xué), 2008, 38(12): 2112-2122)
[6]Ouyang Shan, Peng Junjie, Jin Yi, et al. Structure and theory of dual-space storage for ternary optical computer[J]. Scientia Sinica Informationis, 2016, 46(6): 743-762 (in Chinese)
(歐陽山, 彭俊杰, 金翊, 等. 三值光學(xué)計算機雙空間存儲器的結(jié)構(gòu)和理論[J]. 中國科學(xué): 信息科學(xué), 2016, 46(6): 743-762)
[7]Zhan Xiaoqi, Peng Junjie, Jin Yi, et al. Static allocation strategy of data bits of ternary optical computer[J]. Journal of Shanghai University (Natural Science), 2009, 15(5): 528-533 (in Chinese)
(詹小奇, 彭俊杰, 金翊, 等. 三值光計算機數(shù)據(jù)位資源的靜態(tài)分配策略. 上海大學(xué)學(xué)報: 自然科學(xué)版, 2009, 15(5): 528-533)
[8]Jin Yi, Gu Yingying, Zuo Kaizhong. Theory, technology and progress of a ternary optical computer’s decoder[J]. Scientia Sinica Informationis, 2013, 43(2): 275-286 (in Chinese)
(金翊, 顧瑩瑩, 左開中. 三值光學(xué)計算機解碼器的理論、技術(shù)和實現(xiàn)[J]. 中國科學(xué): 信息科學(xué), 2013, 43(2): 275-286)
[9]Shi Yeqiang, Jin Yi, Ouyang Shan, et al. Design of parallel photosensitive array in ternary optical computer decoder[J]. Journal of Shanghai University (Natural Science), 2016, 22(4): 4495-460) (in Chinese)
(石也強, 金翊, 歐陽山, 等. 三值光學(xué)計算機解碼器中并行感光陣列的設(shè)計[J]. 上海大學(xué)學(xué)報: 自然科學(xué)版, 2016, 22(4): 449-460)
[10]Huang Weigang, Jin Yi, Ai Lirong et al. Design and implementation of the 100 bit coder for ternary optical computers[J]. Computer Engineering & Science, 2006, 28(4): 139-142 (in Chinese)
(黃偉剛, 金翊, 艾麗蓉, 等. 三值光計算機百位編碼器的設(shè)計與構(gòu)造[J]. 計算機工程與科學(xué), 2006, 28(4): 139-142)
[11]Jin Yi, Shen Yunfu, Peng Junjie, et al. Principles and construction of MSD adder in ternary optical computer[J]. Scientia Sinica Informationis, 2011, 41(5): 541-551 (in Chinese)
(金翊, 沈云付, 彭俊杰, 等. 三值光學(xué)計算機中MSD加法器的理論和結(jié)構(gòu)[J]. 中國科學(xué): 信息科學(xué), 2011, 41(5): 541-551)
[12]Song Kai, Yan Liping. The symmetric MSD encoder for one-step adder of ternary optical computer[J]. Optics Communications, 2016, 372(08): 221-228
[13]Song Kai, Yan Liping. Design and implementation of the one-step MSD adder of optical computer[J]. Applied Optics, 2012, 51(7): 917-926
[14]Hu Xiaojun, Jin Yi, Ouyang Shan, et al. A 40 bit multiplication routine of ternary optical computer[J].
Journal of Shanghai University (Natural Science), 2014, 20(5): 645-657 (in Chinese)
(胡曉俊, 金翊, 歐陽山, 等. 三值光學(xué)計算機的40位乘法例程[J]. 上海大學(xué)學(xué)報: 自然科學(xué)版, 2014, 20(5): 645-657)
[15]Xu Qun, Jin Yi, Shen Yunfu et al. MSD iterative division algorithm and implementation technique for a ternary optical computer[J]. Scientia Sinica Informationis, 2016, 46(4): 539-550 (in Chinese)
(徐群, 金翊, 沈云付, 等. 三值光學(xué)計算機的MSD迭代除法算法和實現(xiàn)技術(shù)[J]. 中國科學(xué): 信息科學(xué), 2016, 46(4): 539-550)
[16]Avizienis A. Signed-digit number representations for fast parallel arithmetic[J]. IRE Trans on Electronic Computers, 1961, 10(3): 389-400
[17]Draker B L, Bocker R P, Lasher M E, et al. Photonic computing using the modified signed-digit number representation[J]. Optical Engineering, 1986, 25(1): 38-43
Zhang Honglie, born in 1966. PhD. Professor. Senior member of CCF. Her main research interests include ternary optical computer and embedded system.
Zhou Jian, born in 1987. Master. His main research interest is ternary optical computer.
Zhang Sulan, born in 1980. PhD. Her main research interest is ternary optical computer.
Liu Yanju, born in 1974. PhD. Professor. Her main research interests include surface reconstruction, intelligence control and deep learning.
Wang Xianchao, born in 1973. PhD. Member of ACM and senior member of CCF. His main research interests include optical computing, complex network, big data and machine learning.
Design and Implementation of Positive and Negative Discriminator of MSD Data for Ternary Optical Processor
Zhang Honglie1, Zhou Jian1, Zhang Sulan2, Liu Yanju1, and Wang Xianchao3
1(CollegeofComputerandControlEngineering,QiqiharUniversity,Qiqihar,Heilongjiang161006)2(SchoolofComputerEngineeringandScience,ShanghaiUniversity,Shanghai200072)3(SchoolofMathematicsandStatistics,FuyangTeachersCollege,Fuyang,Anhui236041)
The numerical positive/negative or zero value discriminator is a key component to compare the data size in computer. With the advent of the MSD (modified signed-digit) parallel adder which using three state optical signal to express number in the ternary optical processor, the research of positive/negative or zero value discriminator of MSD digit is becoming an important test to perfect ternary optical processor. Based on the characteristics of MSD data and the correspondence of the optical signal and the MSD digit, this paper proposes a method to ascertain the positive/negative or zero value of the multi-bit MSD data via direct analysis of a group of tree state optical signals which expressing the MSD data. By applying this method to the subtraction result of MSD data, it is realized to discriminate the size of two MSD data. According to the above theory, in this paper a structure of MSD data discriminator is established, which is made of polarizer, liquid crystal and half-mirror. In addition to FPGA as the control circuit, a 3-bit MSD data discriminator is realized. The validity of the discriminator is proved by some experiment, and the correctness of the basic theory and the feasibility of the structural design are proved too.
ternary optical processor; positive/negative value judgment method of MSD data; structure design of the discriminator; hardware design of the discriminator
2017-02-27;
2017-04-13
國家自然科學(xué)基金項目(61672006);黑龍江省自然科學(xué)基金項目(F201440) This work was supported by the National Natural Science Foundation of China (61672006) and the Natural Science Foundation of Heilongjiang Province (F201440).
TP38