国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      隨機(jī)數(shù)發(fā)生器和用于生成隨機(jī)數(shù)種子的方法

      文檔序號(hào):6560419閱讀:384來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):隨機(jī)數(shù)發(fā)生器和用于生成隨機(jī)數(shù)種子的方法
      技術(shù)領(lǐng)域
      本發(fā)明一般涉及隨機(jī)數(shù)發(fā)生器,尤其涉及使用振蕩器陣列的隨機(jī)數(shù)發(fā)生器。
      背景技術(shù)
      出于安全方面的原因,處理器使用了隨機(jī)數(shù)發(fā)生器。在處理器每次加電的時(shí)候,它會(huì)產(chǎn)生一個(gè)隨機(jī)數(shù)種子。該處理器會(huì)在外部數(shù)據(jù)傳輸中提供一個(gè)來(lái)自隨機(jī)數(shù)種子的隨機(jī)數(shù),以便將特定處理器標(biāo)識(shí)給外部處理器或數(shù)據(jù)處理系統(tǒng)。舉例來(lái)說(shuō),該隨機(jī)數(shù)種子包含了多個(gè)數(shù)字位,這些數(shù)字位是在處理器加電的時(shí)候被存儲(chǔ)。然而,傳送到外部源的隨機(jī)數(shù)有可能是隨機(jī)數(shù)種子本身,或者是隨機(jī)數(shù)種子的變形。而安全方面的問(wèn)題則在于特定處理器僅僅希望被數(shù)據(jù)傳輸中的一個(gè)或多個(gè)預(yù)定方所識(shí)別。如果外部方可以確定隨機(jī)數(shù)種子,那么他們有可能侵入特定處理器。因此,隨機(jī)數(shù)發(fā)生器在處理器每次加電的時(shí)候都為處理器提供了一個(gè)不同的隨機(jī)數(shù)種子。在隨機(jī)數(shù)序列中是不應(yīng)該存在重復(fù)數(shù)字的,并且外部方應(yīng)該無(wú)法對(duì)隨機(jī)數(shù)種子進(jìn)行逆向工程而入侵處理器。相應(yīng)地,隨機(jī)數(shù)發(fā)生器的最終目的是產(chǎn)生無(wú)法被逆向工程的真正隨機(jī)的數(shù)字。
      用于產(chǎn)生隨機(jī)數(shù)的一種常規(guī)方法包括創(chuàng)建一個(gè)電路,該電路產(chǎn)生噪聲并且將噪聲放大到數(shù)字電平。然后,處理器對(duì)噪聲發(fā)生器進(jìn)行采樣,以便拾取一個(gè)隨機(jī)位。如果所述采樣是間隔良好和不規(guī)則的,并且1和0的數(shù)字不具有相同的被采樣概率,那么這種隨機(jī)數(shù)發(fā)生器會(huì)很好地工作。另一種常規(guī)方法包括在時(shí)間上累積這些數(shù)字(digital number),以產(chǎn)生隨機(jī)數(shù)。這種后處理可以通過(guò)進(jìn)一步阻礙逆向工程來(lái)改進(jìn)這種隨機(jī)數(shù)發(fā)生器。被采樣的硬件混沌電路是另一種形式的隨機(jī)數(shù)機(jī)器?;煦珉娐肪哂懈鞣N平衡和相關(guān)性問(wèn)題,并且可能無(wú)法與真正隨機(jī)的信源緊密關(guān)聯(lián)。這些技術(shù)的問(wèn)題在于這些技術(shù)都是確定性的、可發(fā)現(xiàn)的以及不夠隨機(jī)的。如果可以發(fā)現(xiàn)所產(chǎn)生的隨機(jī)數(shù),那么將會(huì)出現(xiàn)安全問(wèn)題。因此,明顯的是,能夠產(chǎn)生顯示出更多的隨機(jī)性以及更少的可發(fā)現(xiàn)性的隨機(jī)數(shù)種子的隨機(jī)數(shù)發(fā)生器會(huì)是對(duì)現(xiàn)有技術(shù)的一個(gè)重大改進(jìn)。

      發(fā)明內(nèi)容
      本發(fā)明提供了一種用于產(chǎn)生隨機(jī)數(shù)種子的隨機(jī)數(shù)發(fā)生器、方法以及計(jì)算機(jī)程序產(chǎn)品。在一振蕩器陣列內(nèi)部的每一個(gè)振蕩器都在不同的頻率上工作的。每一個(gè)振蕩器的工作頻率并不是諧波相關(guān)的,由此在任何兩個(gè)振蕩器的步驟之間不存在整數(shù)倍數(shù)。在一個(gè)實(shí)施例中,該振蕩器陣列的輸出與一個(gè)多輸入鎖存器相連。單輸入鎖存器的陣列可以替代該多輸入鎖存器。該多輸入鎖存器也接收一個(gè)采樣信號(hào),該信號(hào)是一個(gè)時(shí)鐘信號(hào)。該時(shí)鐘信號(hào)對(duì)振蕩器陣列的輸出進(jìn)行采樣,并且該多輸入鎖存器與隨機(jī)數(shù)確定邏輯(“RNDL”)一起為該陣列內(nèi)的每一個(gè)振蕩器產(chǎn)生一個(gè)數(shù)字輸出(0或1)。RNDL使用這些數(shù)字輸出來(lái)創(chuàng)建一個(gè)隨機(jī)數(shù)種子。相應(yīng)地,所述隨機(jī)數(shù)種子是一個(gè)二進(jìn)制數(shù),其中該隨機(jī)數(shù)種子中的數(shù)字的數(shù)量與陣列內(nèi)的振蕩器數(shù)量相同。
      在一個(gè)優(yōu)選實(shí)施例中,該振蕩器陣列包含了若干多級(jí)自由振蕩的環(huán)形振蕩器,其中每一個(gè)振蕩器都在具有隨機(jī)抖動(dòng)的情況下工作。導(dǎo)致被測(cè)周期不同于振蕩器固有周期的噪聲成分被稱(chēng)為抖動(dòng)。因此,每一個(gè)振蕩器的抖動(dòng)以及陣列內(nèi)部任何兩個(gè)振蕩器之間的相對(duì)相位不確定性隨時(shí)間累積。振蕩器之間的頻率差異也產(chǎn)生隨時(shí)間增長(zhǎng)的確定性的相位不確定性。這些特征導(dǎo)致相比于先前的隨機(jī)數(shù)發(fā)生器隨機(jī)數(shù)種子具有更大的隨機(jī)性以及更小的可預(yù)測(cè)性。


      為了更全面地理解本發(fā)明以及本發(fā)明的優(yōu)點(diǎn),現(xiàn)在將結(jié)合附圖來(lái)參考下面的描述,在附圖中圖1描述了包含隨機(jī)數(shù)發(fā)生器的處理器的框圖;圖2描述了經(jīng)過(guò)修改的隨機(jī)數(shù)發(fā)生器的框圖,該隨機(jī)數(shù)發(fā)生器包括一個(gè)振蕩器陣列以及隨機(jī)數(shù)確定邏輯;圖3描述了一個(gè)樣本累積直方圖,該直方圖描述了振蕩器內(nèi)的隨機(jī)抖動(dòng);圖4描述了一個(gè)基于對(duì)數(shù)的圖,該圖表描述了基于自由振蕩的振蕩器經(jīng)驗(yàn)數(shù)據(jù)的模擬結(jié)果;圖5描述了示出了隨機(jī)數(shù)生成過(guò)程的流程圖;以及圖6描述了一個(gè)數(shù)據(jù)處理系統(tǒng)的框圖;具體實(shí)施方式
      在下面的論述中闡述了大量的特定細(xì)節(jié),以便提供關(guān)于本發(fā)明的全面理解。然而,本領(lǐng)域技術(shù)人員將會(huì)了解,本發(fā)明可以在沒(méi)有這些特定細(xì)節(jié)的情況下實(shí)施。在其他情況中,采用了示意圖或框圖的形式來(lái)描述眾所周知的部件,以免以不必要的細(xì)節(jié)混淆本發(fā)明。此外,在大多數(shù)情況下,省略了涉及網(wǎng)絡(luò)通信、電磁信號(hào)傳送技術(shù)等方面的細(xì)節(jié),因?yàn)檫@些細(xì)節(jié)沒(méi)有被認(rèn)為是全面理解本發(fā)明所必需的,并且這些細(xì)節(jié)被認(rèn)為處于相關(guān)領(lǐng)域的普通技術(shù)人員的理解范圍之內(nèi)。
      此外還應(yīng)該指出,除非另有說(shuō)明,否則這里描述的所有功能都是既可以在硬件中也可以在軟件中并且還可以在硬件與軟件的某種組合中實(shí)現(xiàn)。然而,在一個(gè)優(yōu)選實(shí)施例中,這些功能是在硬件中實(shí)現(xiàn)的,以便提供最有效的實(shí)現(xiàn)。作為另一種選擇,除非另有說(shuō)明,否則這些功能也可以由諸如計(jì)算機(jī)或電子數(shù)據(jù)處理器的處理器根據(jù)被編碼為執(zhí)行此類(lèi)功能的代碼來(lái)執(zhí)行,所述代碼例如是計(jì)算機(jī)程序代碼、軟件和/或集成電路。
      圖1描述了包含隨機(jī)數(shù)發(fā)生器的處理器100的框圖。如參考圖6所示,處理器100可以與多個(gè)不同組件相連。控制邏輯102依照一組在處理器100內(nèi)部運(yùn)行的指令而將控制信號(hào)發(fā)送到處理器100內(nèi)部的裝置。因此,控制邏輯102將控制信號(hào)發(fā)送給主時(shí)鐘104、振蕩器陣列106、普及(pervasive)處理器108以及隨機(jī)數(shù)確定邏輯110。主時(shí)鐘104為處理器100提供全局時(shí)鐘信號(hào)。此外,主時(shí)鐘104將全局時(shí)鐘信號(hào)饋送到控制邏輯102以及隨機(jī)數(shù)確定邏輯110。
      振蕩器陣列106包含了多個(gè)振蕩器,這些振蕩器在不同的頻率上產(chǎn)生信號(hào)。在本圖中,振蕩器陣列106示出在一個(gè)方框中,但在本發(fā)明的實(shí)現(xiàn)中,振蕩器陣列可以被置于處理器100上的任何位置。振蕩器陣列106的輸出饋送到隨機(jī)數(shù)確定邏輯(“RNDL”110)。RNDL 110則從振蕩器陣列106的輸出中產(chǎn)生隨機(jī)數(shù)。RNDL 110將該隨機(jī)數(shù)傳送到普及處理器108(也稱(chēng)為維護(hù)處理器)。普及處理器108的應(yīng)用是特定于實(shí)現(xiàn)的,但是它可以控制電源、隨機(jī)數(shù)發(fā)生器、振蕩器、以及片上時(shí)鐘。通常,處理器100隨需產(chǎn)生隨機(jī)數(shù)種子。處理器100可以為每一次加電請(qǐng)求一個(gè)隨機(jī)數(shù)種子,或者普及處理器108也可以為外部數(shù)據(jù)傳輸請(qǐng)求一個(gè)隨機(jī)數(shù)種子。
      在本圖中,普及處理器108接收該隨機(jī)數(shù),并且將其傳送到控制邏輯102,其中所述控制邏輯102可以將隨機(jī)數(shù)提供給外部源。相應(yīng)地,普及處理器108可以發(fā)出其自身的控制信號(hào),但是在本圖中,控制邏輯102發(fā)出控制信號(hào)。振蕩器陣列106以及RNDL 110構(gòu)成了隨機(jī)數(shù)發(fā)生器。所述隨機(jī)數(shù)發(fā)生器是獨(dú)立的,并且可以處于處理器100內(nèi)部的任何位置。本圖則是處理器的一個(gè)示例,并且并未限制本發(fā)明的范圍。
      圖2描述了經(jīng)過(guò)修改的隨機(jī)數(shù)發(fā)生器200的框圖,所述隨機(jī)數(shù)發(fā)生器包含了振蕩器陣列以及隨機(jī)數(shù)確定邏輯。振蕩器陣列106涉及圖1。如先前所述,振蕩器220、222以及224不是必須像本圖中顯示的那樣排列。振蕩器陣列106的輸出饋送到一個(gè)多輸入鎖存器202。該鎖存器202可以是多輸入的D觸發(fā)器(flip-flop),也可以是常規(guī)的多輸入鎖存器。圖2顯示了多輸入鎖存器202,但是一個(gè)單輸入鎖存器陣列也可以替換多輸入鎖存器202。相應(yīng)地,一個(gè)單輸入鎖存器與每一個(gè)相應(yīng)的振蕩器相連。因此,振蕩器220經(jīng)由輸入線204來(lái)饋送輸入D1,振蕩器222經(jīng)由輸入線206來(lái)饋送輸入D2,而振蕩器224經(jīng)由輸入線208來(lái)饋送輸入DN。這個(gè)多輸入鎖存器202為來(lái)自圖1的RNDL 110提供了振蕩器輸出212、214、216。在本發(fā)明的不同實(shí)施例中,多輸入鎖存器202也可以處于RNDL 110上或是振蕩器陣列106上。采樣信號(hào)210是鎖存器202的一個(gè)輸入。在這種實(shí)現(xiàn)中,采樣信號(hào)210是來(lái)自圖1的主時(shí)鐘104的時(shí)鐘信號(hào)。時(shí)鐘信號(hào)210對(duì)振蕩器陣列106的輸出進(jìn)行采樣。而時(shí)鐘信號(hào)輸入210不調(diào)整或校準(zhǔn)這些振蕩器。
      鎖存器202與RNDL 110一起提供了作為數(shù)字位(1或0)的振蕩器220、222和224的輸出。相應(yīng)地,振蕩信號(hào)從高電壓振蕩到低電壓。鎖存器202所進(jìn)行的一個(gè)振蕩信號(hào)采樣顯示一個(gè)高電壓或一個(gè)低電壓。在一個(gè)實(shí)施例中,RNDL 110為高電壓分配1,為低電壓分配0。鎖存器202響應(yīng)于時(shí)鐘信號(hào)210而對(duì)數(shù)字位進(jìn)行采樣。舉例來(lái)說(shuō),鎖存器202可以在全局時(shí)鐘信號(hào)的上升沿提供數(shù)字位。相應(yīng)地,Q1212是振蕩器220的數(shù)字位表示,Q2214是振蕩器222的數(shù)字位表示,而QN216則是振蕩器224的數(shù)字位表示。振蕩器陣列106中的振蕩器的數(shù)量決定隨機(jī)數(shù)的位長(zhǎng)度。在本圖中,三個(gè)振蕩器220、222和224與RNDL 110一起產(chǎn)生一個(gè)3位的隨機(jī)數(shù),例如“001”或“101”。隨機(jī)數(shù)確定邏輯110將數(shù)字位輸出Q1212、Q2214、QN216變換成一個(gè)隨機(jī)數(shù)。為了提供還要更大的隨機(jī)性,隨機(jī)數(shù)確定邏輯110可以采用多種方式將這些數(shù)字位變換成一個(gè)隨機(jī)數(shù)。舉例來(lái)說(shuō),第一個(gè)隨機(jī)數(shù)可以包括Q1212、Q2214以及QN216,第二個(gè)隨機(jī)數(shù)可以包括QN216、Q2214以及Q1212,而第三個(gè)隨機(jī)數(shù)可以包括Q2214、QN216以及Q1212。如先前所述,在本發(fā)明中,多個(gè)D觸發(fā)器或鎖存器可以替換鎖存器202。舉例來(lái)說(shuō),三個(gè)單獨(dú)的鎖存器可以提供Q1212、Q2214以及QN216。圖2描述了一個(gè)多輸入鎖存器202,這是因?yàn)樵搶?shí)施例使得測(cè)試的復(fù)雜性減小。對(duì)測(cè)試而言,多輸入鎖存器202僅僅接收一個(gè)測(cè)試模式,并且結(jié)果可以從鎖存器212、214以及216的輸出中讀取。而多個(gè)鎖存器需要多個(gè)測(cè)試模式。
      在一個(gè)優(yōu)選實(shí)施例中,振蕩器220、222以及224分別在不同的高頻F1、F2以及FN上工作,由此沒(méi)有兩個(gè)頻率是諧波相關(guān)的。因此,陣列106內(nèi)的振蕩器是相互獨(dú)立的,并且在任何兩個(gè)振蕩器的頻率之間不存在整數(shù)倍數(shù)。舉例來(lái)說(shuō),圖2中的三個(gè)振蕩器220、222以及224可以分別在2.656GHz、1.713GHz以及.923GHz的頻率上工作。高的諧波相關(guān)的頻率可能導(dǎo)致相互緊鄰的振蕩器顯現(xiàn)出注入鎖定(injection locking)效應(yīng)。注入鎖定效應(yīng)導(dǎo)致振蕩器以協(xié)調(diào)一致的方式工作,而這會(huì)對(duì)隨機(jī)數(shù)發(fā)生器的隨機(jī)性產(chǎn)生不利影響。通過(guò)使用頻率非諧波相關(guān)的振蕩器,本發(fā)明使得能夠以彼此緊鄰的方式來(lái)包含這些振蕩器,而不會(huì)顯現(xiàn)出注入鎖定效應(yīng)。處理器100可以在提供了隨機(jī)數(shù)之后斷開(kāi)隨機(jī)數(shù)發(fā)生器200的電源,也可以使隨機(jī)數(shù)發(fā)生器200繼續(xù)處于通電狀態(tài)。
      在一個(gè)優(yōu)選實(shí)施例中,振蕩器陣列106包括N個(gè)多級(jí)自由振蕩的環(huán)形振蕩器,每一個(gè)振蕩器都在具有隨機(jī)抖動(dòng)的情況下工作。一個(gè)振蕩器產(chǎn)生具有固有的頻率和周期(舉例來(lái)說(shuō),處于2.656GHz的時(shí)鐘信號(hào)具有大小為377ps的周期)的時(shí)鐘信號(hào)。導(dǎo)致被測(cè)周期不同于振蕩器固有周期的噪聲成分稱(chēng)為抖動(dòng)。抖動(dòng)同時(shí)包含了確定性(例如電源噪聲之類(lèi)的特定原因)內(nèi)容和隨機(jī)內(nèi)容。本公開(kāi)集中在隨機(jī)抖動(dòng)上,這是因?yàn)橄嗨频拇_定性抖動(dòng)將會(huì)施加于陣列中的所有振蕩器。抖動(dòng)的隨機(jī)部分則可以借助高斯分布統(tǒng)計(jì)來(lái)描述。
      圖3描述了一個(gè)樣本累積直方圖300,該直方圖示出了振蕩器內(nèi)部的隨機(jī)抖動(dòng)。該直方圖300顯示了高斯分布統(tǒng)計(jì)的屬性。該直方圖300描述的是頻率為2.565GHz并且周期為377ps的環(huán)形振蕩器。y軸是為特定周期測(cè)得的命中數(shù)量。換句話說(shuō),該振蕩器進(jìn)行了很多次采樣,并且測(cè)得的周期被記錄為命中。相應(yīng)地,對(duì)于一個(gè)周期的少量的命中表明這個(gè)特定周期是稀少的,而大量的命中則表明所述特定周期是普遍的。該直方圖示出,由于振蕩器的周期因?yàn)槎秳?dòng)而一直改變,因此,來(lái)自特定振蕩器的一個(gè)采樣是無(wú)法預(yù)測(cè)的。
      因此,假設(shè)來(lái)自某個(gè)振蕩器的隨機(jī)抖動(dòng)是均值為零的高斯抖動(dòng),那么Jrms=Ji√(M);
      其中Jrms=M個(gè)周期之后的均方根(“RMS”)累積抖動(dòng)Ji=本征RMS隨機(jī)抖動(dòng)M=周期數(shù)量舉個(gè)例子,如果對(duì)RMS抖動(dòng)(Jrms)為7.525ps的2.656GHz振蕩器采樣100毫秒的時(shí)間(這相當(dāng)于M=265,000,000個(gè)周期)里,那么累積的抖動(dòng)將是122.64ns(這相當(dāng)于M=325.72個(gè)周期)。在一個(gè)優(yōu)選實(shí)施例中,陣列中的每一個(gè)振蕩器都具有不同的頻率,并因此具有不同的周期值(M)以及累積抖動(dòng)值(Jrms),即使本征隨機(jī)抖動(dòng)(Ji)相同。這表明隨機(jī)數(shù)確定邏輯110中的每一個(gè)位(Q1、Q2或QN)都是與所有其他位值相獨(dú)立的隨機(jī)值。因此,這些位值(Q1、Q2或QN)適于創(chuàng)建可供處理器100使用的無(wú)法預(yù)測(cè)的隨機(jī)數(shù)種子。
      圖4描述了一個(gè)基于對(duì)數(shù)的圖表,該圖表示出了基于自由振蕩的振蕩器經(jīng)驗(yàn)數(shù)據(jù)的仿真結(jié)果。在一個(gè)優(yōu)選實(shí)施例中,這些自由振蕩的振蕩器構(gòu)成了一個(gè)振蕩器陣列106。如果振蕩器顯現(xiàn)出高斯特性,那么log(Jrms)=log(Ji)+1/2log(n)其中n=以周期數(shù)表示的采樣間隔這個(gè)等式表明對(duì)于顯現(xiàn)出高斯屬性的振蕩器,log(Jrms)應(yīng)該顯示出與1/2log(n)的平行性。Y軸以psec為單位來(lái)度量RMS抖動(dòng)(Jrms),而x軸度量與除數(shù)n相關(guān)的時(shí)間間隔。該圖上的圓形表示在不同時(shí)間采樣的振蕩器的1/2log(n)結(jié)果,而三角形表示在不同時(shí)間采樣的振蕩器的log(Jrms)結(jié)果。每一個(gè)振蕩器都具有固有的n值,所述n值相關(guān)于在特定數(shù)量的周期之后被采樣的振蕩器的隨機(jī)抖動(dòng)。因此,具有相同n值的圓形和三角形相關(guān)于在相同時(shí)間被采樣的相同振蕩器。從該圖中可以看出,1/2log(n)的值以及l(fā)og(Jrms)的值顯然是平行的。這個(gè)經(jīng)驗(yàn)數(shù)據(jù)證明自由振蕩的振蕩器顯現(xiàn)出高斯分布。由于具有隨機(jī)抖動(dòng)特性,這些振蕩器對(duì)本發(fā)明而言是理想的。如先前所述,這些自由振蕩的振蕩器將產(chǎn)生無(wú)法預(yù)測(cè)或確定的數(shù)字位值。
      圖5描述了示出了隨機(jī)數(shù)生成過(guò)程的流程圖。首先,在步驟502,控制邏輯102向普及處理器108以及RNDL 110發(fā)出請(qǐng)求隨機(jī)數(shù)種子的控制信號(hào)。如先前所述,一個(gè)隨機(jī)數(shù)種子可以變換成多個(gè)隨機(jī)數(shù)種子。在步驟504,時(shí)鐘信號(hào)經(jīng)由多輸入鎖存器202而對(duì)振蕩器陣列106進(jìn)行采樣。RNDL110將來(lái)自振蕩器的輸出變換成數(shù)字位,并然后變換成一個(gè)隨機(jī)數(shù)506。在步驟508,RNDL 110將隨機(jī)數(shù)作為數(shù)字位表示傳送到普及處理器108。在步驟510,普及處理器108將隨機(jī)數(shù)傳送到控制邏輯102。在步驟512,控制邏輯102在處理器內(nèi)部使用該隨機(jī)數(shù),和/或?qū)⑵滢D(zhuǎn)發(fā)到外部設(shè)備。圖5僅僅是本發(fā)明的隨機(jī)數(shù)生成過(guò)程的一個(gè)示例,而沒(méi)有將本發(fā)明局限于這種過(guò)程。
      圖6描述了依照本發(fā)明實(shí)施例的數(shù)據(jù)處理系統(tǒng)600的框圖,該系統(tǒng)例如可實(shí)現(xiàn)為服務(wù)器、客戶(hù)計(jì)算設(shè)備、手持設(shè)備、筆記本或其他類(lèi)型的數(shù)據(jù)處理系統(tǒng)。數(shù)據(jù)處理系統(tǒng)600可以實(shí)現(xiàn)本發(fā)明的一些方面,并且可以是對(duì)稱(chēng)多處理器(“SMP”)系統(tǒng),或是具有多個(gè)與系統(tǒng)總線606相連的處理器100和100的非均勻(non-homogeneous)系統(tǒng)。作為選擇,該系統(tǒng)也可以包括單個(gè)處理器100。
      存儲(chǔ)控制器/高速緩存608提供了一個(gè)到本地存儲(chǔ)器609的接口,并且與系統(tǒng)總線606相連。I/O總線橋610與系統(tǒng)總線606相連,并且提供了一個(gè)到I/O總線612的接口。如所示的,存儲(chǔ)控制器/高速緩存608以及I/O總線橋610是可以集成在一起的。與I/O總線612相連的外設(shè)部件互連(“PCI”)總線橋614提供了一個(gè)到PCI局部總線616的接口。多個(gè)調(diào)制解調(diào)器可以與PCI局部總線616相連。典型的PCI總線實(shí)現(xiàn)將支持四個(gè)PCI擴(kuò)展槽或附加連接器。調(diào)制解調(diào)器618以及網(wǎng)絡(luò)適配器620提供了到那些經(jīng)由附加連接器(未示出)連接到PCI局部總線的其他計(jì)算設(shè)備的通信鏈路。其他的PCI橋622和624為其他的PCI局部總線626和628提供了接口,從所述附加的PCI局部總線,其他的調(diào)制解調(diào)器或網(wǎng)絡(luò)適配器(未顯示)可以得到支持。這樣,數(shù)據(jù)處理系統(tǒng)600允許到多個(gè)網(wǎng)絡(luò)計(jì)算機(jī)的連接。如所示的,存儲(chǔ)器映射圖形適配器630以及硬盤(pán)632同樣可以直接或間接地與I/O總線612相連。
      相應(yīng)地,圖6中示出的硬件可以改變。舉例來(lái)說(shuō),作為所述硬件的補(bǔ)充或是替換,光盤(pán)驅(qū)動(dòng)器等其他外圍設(shè)備也可以使用。所描述的示例并不意味著在體系結(jié)構(gòu)上對(duì)本發(fā)明的限制。舉例來(lái)說(shuō),數(shù)據(jù)處理系統(tǒng)500可以是運(yùn)行高級(jí)交互執(zhí)行體(“AIX”)操作系統(tǒng)、LINUX操作系統(tǒng)或其他操作系統(tǒng)的、位于紐約Armonk的國(guó)際商業(yè)機(jī)器公司的產(chǎn)品IBM Deep Blue系統(tǒng)、CMT-5系統(tǒng)、或其他多核處理器系統(tǒng)。
      應(yīng)該理解的是,本發(fā)明可以采取多種形式和實(shí)施例。相應(yīng)地,在不脫離本發(fā)明的范圍的情況下,可進(jìn)行對(duì)本設(shè)計(jì)的多種改變。這里所概述的能力允許多種連網(wǎng)模型的可能性。本公開(kāi)不應(yīng)該被理解成優(yōu)選任何特定的聯(lián)網(wǎng)模型,相反,本發(fā)明針對(duì)的是在其上構(gòu)建這些聯(lián)網(wǎng)模型的基礎(chǔ)概念。
      在這里已參考本發(fā)明的某些優(yōu)選實(shí)施例而對(duì)其進(jìn)行了這樣的描述,應(yīng)該指出的是,所公開(kāi)的實(shí)施例在性質(zhì)上是示例性而不是限制性的,并且在上述公開(kāi)中考慮到很多種變化、修改、變更和替換,此外在某些情況中,可以使用本發(fā)明的某些特征而沒(méi)有相應(yīng)地使用其他特征?;谏衔闹嘘P(guān)于優(yōu)選實(shí)施例的描述,本領(lǐng)域技術(shù)人員可能認(rèn)為很多這種變化和修改是合意的。相應(yīng)地,恰當(dāng)?shù)氖且砸环N與本發(fā)明的范圍相一致的方式來(lái)對(duì)所附權(quán)利要求進(jìn)行寬泛的理解。
      權(quán)利要求
      1.一種處理器內(nèi)的隨機(jī)數(shù)發(fā)生器,包括振蕩器陣列,其中每一個(gè)振蕩器都在不同的頻率上工作;鎖存器陣列,其中每一個(gè)鎖存器接收來(lái)自單獨(dú)振蕩器的輸入,接收采樣信號(hào),并且響應(yīng)于該采樣信號(hào)而產(chǎn)生振蕩器輸出信號(hào);以及隨機(jī)數(shù)確定邏輯(“RNDL”),其中所述RNDL至少被配置成接收該鎖存器陣列的輸出信號(hào),并且生成隨機(jī)數(shù)種子。
      2.權(quán)利要求1的隨機(jī)數(shù)發(fā)生器,其中所述隨機(jī)數(shù)發(fā)生器是在計(jì)算機(jī)系統(tǒng)或數(shù)據(jù)處理系統(tǒng)中使用的。
      3.權(quán)利要求1的隨機(jī)數(shù)發(fā)生器,其中所述振蕩器陣列包括多個(gè)多級(jí)自由振蕩的環(huán)形振蕩器。
      4.權(quán)利要求1的隨機(jī)數(shù)發(fā)生器,其中每一個(gè)振蕩器的工作頻率不是諧波相關(guān)的,由此在任何兩個(gè)振蕩器的頻率之間不存在整數(shù)倍數(shù)。
      5.權(quán)利要求1的隨機(jī)數(shù)發(fā)生器,其中所述鎖存器陣列進(jìn)一步包括與所述振蕩器陣列相耦合的一個(gè)多輸入鎖存器或一個(gè)多輸入觸發(fā)器,所述鎖存器或觸發(fā)器至少被配置成為所述陣列內(nèi)的每一個(gè)振蕩器產(chǎn)生輸出信號(hào)。
      6.權(quán)利要求1的隨機(jī)數(shù)發(fā)生器,其中所述鎖存器陣列進(jìn)一步包括與所述振蕩器陣列相耦合的觸發(fā)器陣列。
      7.權(quán)利要求1的隨機(jī)數(shù)發(fā)生器,其中所述采樣信號(hào)是對(duì)來(lái)自所述振蕩器陣列的輸出信號(hào)進(jìn)行采樣的時(shí)鐘信號(hào)。
      8.權(quán)利要求1的隨機(jī)數(shù)發(fā)生器,其中所述RNDL至少被配置成讀取來(lái)自所述鎖存器陣列中的每一個(gè)鎖存器的數(shù)字輸出(0或1);以及生成包含了這些數(shù)字輸出的隨機(jī)數(shù)種子。
      9.權(quán)利要求8的隨機(jī)數(shù)發(fā)生器,其中所述RNDL至少被配置成將所述隨機(jī)數(shù)種子傳送到所述處理器的其他區(qū)域。
      10.一種在處理器中用于產(chǎn)生隨機(jī)數(shù)種子的方法,包括配置振蕩器陣列,以使每一個(gè)振蕩器工作在不同的頻率上;將鎖存器陣列與振蕩器陣列相耦合,以使每一個(gè)鎖存器與單獨(dú)的振蕩器相耦合;生成采樣信號(hào);將該采樣信號(hào)傳送到該鎖存器陣列;響應(yīng)于該采樣信號(hào),生成來(lái)自該振蕩器陣列的輸出信號(hào);以及從該振蕩器陣列的輸出信號(hào)產(chǎn)生隨機(jī)數(shù)種子。
      11.權(quán)利要求10的方法,其中該方法是在計(jì)算機(jī)系統(tǒng)或數(shù)據(jù)處理系統(tǒng)中使用的。
      12.權(quán)利要求10的方法,其中該振蕩器陣列包括多個(gè)多級(jí)自由振蕩的振蕩器。
      13.權(quán)利要求10的方法,其中每一個(gè)振蕩器的工作頻率不是諧波相關(guān)的,由此在任何兩個(gè)振蕩器的頻率之間不存在整數(shù)倍數(shù)。
      14.權(quán)利要求10的方法,其中所述鎖存器陣列進(jìn)一步包括與所述振蕩器陣列相耦合的一個(gè)多輸入鎖存器或一個(gè)多輸入觸發(fā)器,所述鎖存器或觸發(fā)器至少被配置成為所述陣列內(nèi)的每一個(gè)振蕩器產(chǎn)生輸出信號(hào)。
      15.權(quán)利要求10的方法,其中所述鎖存器陣列進(jìn)一步包括與所述振蕩器陣列相耦合的觸發(fā)器陣列。
      16.權(quán)利要求10的方法,其中所述生成采樣信號(hào)的步驟進(jìn)一步包括生成時(shí)鐘信號(hào),所述時(shí)鐘信號(hào)被設(shè)計(jì)成對(duì)來(lái)自所述振蕩器陣列的輸出信號(hào)進(jìn)行采樣。
      17.權(quán)利要求10的方法,其中所述響應(yīng)于采樣信號(hào)而生成輸出信號(hào)的步驟進(jìn)一步包括配置所述鎖存器陣列,以使它們響應(yīng)于所述采樣信號(hào)而產(chǎn)生來(lái)自所述振蕩器陣列的信號(hào)的數(shù)字輸出(0或1)。
      18.權(quán)利要求10的方法,其中所述產(chǎn)生隨機(jī)數(shù)種子的步驟進(jìn)一步包括從所述鎖存器陣列的每一個(gè)鎖存器中讀取數(shù)字輸出(0或1);以及產(chǎn)生包含了這些數(shù)字輸出的隨機(jī)數(shù)種子。
      19.權(quán)利要求18的方法,其中產(chǎn)生所述隨機(jī)數(shù)種子還包括將該隨機(jī)數(shù)種子傳送到所述處理器的其他區(qū)域。
      20.一種用于產(chǎn)生隨機(jī)數(shù)種子的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品具有其中包含了計(jì)算機(jī)程序的介質(zhì),其中所述計(jì)算機(jī)程序包括用于配置振蕩器陣列。以使每一個(gè)振蕩器工作在不同頻率的計(jì)算機(jī)代碼;用于將鎖存器陣列與該振蕩器陣列相耦合,以使每一個(gè)鎖存器與單獨(dú)的振蕩器相耦合的計(jì)算機(jī)代碼;用于生成采樣信號(hào)的計(jì)算機(jī)代碼;用于將該采樣信號(hào)傳送到該鎖存器陣列的計(jì)算機(jī)代碼;用于響應(yīng)于該采樣信號(hào)而生成來(lái)自該振蕩器陣列的輸出信號(hào)的計(jì)算機(jī)代碼;用于從該振蕩器陣列的輸出信號(hào)中產(chǎn)生隨機(jī)數(shù)種子的計(jì)算機(jī)代碼。
      全文摘要
      提供了一種用于產(chǎn)生隨機(jī)數(shù)種子的隨機(jī)數(shù)發(fā)生器、方法以及計(jì)算機(jī)程序產(chǎn)品。振蕩器陣列內(nèi)的每一個(gè)振蕩器都在不同的頻率上工作。每一個(gè)振蕩器的工作頻率不是諧波相關(guān)的,由此在任何兩個(gè)振蕩器頻率之間不存在整數(shù)倍數(shù)。在一個(gè)實(shí)施例中,振蕩器陣列的輸出與多輸入鎖存器相連。所述多輸入鎖存器還接收采樣信號(hào),該采樣信號(hào)是時(shí)鐘信號(hào)。所述時(shí)鐘信號(hào)對(duì)振蕩器陣列的輸出進(jìn)行采樣,并且多輸入鎖存器與隨機(jī)數(shù)確定邏輯(“RNDL”)一起為陣列內(nèi)部的每一個(gè)振蕩器產(chǎn)生一個(gè)數(shù)字輸出(0或1)。RNDL使用這些數(shù)字輸出來(lái)創(chuàng)建隨機(jī)數(shù)種子。
      文檔編號(hào)G06F7/58GK1916838SQ200610108358
      公開(kāi)日2007年2月21日 申請(qǐng)日期2006年8月2日 優(yōu)先權(quán)日2005年8月16日
      發(fā)明者D·W·伯斯特勒, E·海盧, H·P·霍夫斯蒂, J·S·利伯蒂 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1