2015-02-06 32 views
0

我試圖找到一個共同的算法(排序,你可以發現一個基本的計算機科學/電信教科書),符合下列條件的一個例子:通用算法的例子(帶櫃)

  • 有一個計數器一個(其可以計數整數,比特,時間等)
  • 一個是當任一復位:(ⅰ)一個達到或超過預定閾值X或(ii)另一個事件發生。

在理想情況下(儘管不是絕對必要的)中的「其它事件」,導致一個重置將是另一個計數器b。既如果b達到預定閾值ý一個b將復位(並且類似地,如果一個達到預設閾值X一個b將復位)。這可以由:

Initialize x and y thresholds 

while (true) 

    if (*particular event relevant to a*) 
     a++; 

    if (*particular event relevant to b*) 
     b++; 

    if (a>=x) OR (b>=y) 
     *Something happens* 
     a=0; 
     b=0; 

任何想法將不勝感激!

非常感謝

+0

怎麼樣:單定時器/計數器,PWM發生器,頻率發生器,產生...更多定時器 – Spektre 2015-02-07 09:17:07

+0

'Event'在_internal condition_在_external event_或作爲? (Xilinx應用筆記「計數器例子」出現在腦海裏 - 從www開始的一年) – greybeard 2015-02-09 18:53:14

+0

@greybeard - 內部條件。也許更好的解釋我所追求的是實現兩個變量達到門檻。一旦任一變量達到其閾值,它們都會重置。 – DanielWoods 2015-02-11 12:11:38

回答

0

上級網絡數據包接收情況如何?

  1. ​​

  2. 你問你的下級層接收min(maximum_packet_size, request_length - received_bytes)

    一個。你把你得到的字節並將它們添加到你的緩衝區,received_bytes += n_bytes_received_this_time

    b。如果收到的字節數未達到您需要的大小,請重複2.

    (c。)如果發生錯誤,則處理該錯誤。

+0

謝謝Marcus。這很有用。 – DanielWoods 2015-02-09 14:50:44