chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文解析高頻交易中FPGA的作用及面試建議

FPGA技術(shù)江湖 ? 來源:FPGA技術(shù)江湖 ? 2025-01-23 10:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

為高頻交易(High Frequency Trading,HFT)公司開發(fā)硬件一直是 FPGA 工程師最熱門的職位之一。由于該行業(yè)提供的高薪,甚至可以被稱為該領(lǐng)域許多人的“夢想職業(yè)”。本文根據(jù)自己和其他人的親身經(jīng)歷,寫了一篇關(guān)于測試職位是什么樣子以及如何準備面試的文章。

HFT 世界是什么樣的

為了理解這些術(shù)語并以更合適的方式做好準備,我們首先來談?wù)?HFT 是什么,以及為什么 FPGA 在交易行業(yè)中占有一席之地。

高頻交易是算法交易(https://www.investopedia.com/articles/active-trading/101014/basics-algorithmic-trading-concepts-and-examples.asp)的一種變體,算法交易本身是自動日間交易的一種變體,從根本上講,是由算法而不是人來下訂單。人編寫和監(jiān)控算法,但不手動下交易。在 HFT 中,所有這些都被推向極致,利用可能只持續(xù)幾毫秒的機會,通常是套利機會。為了有效地利用這樣的機會并賺錢,人們需要在極短的時間內(nèi)消化市場數(shù)據(jù)、做出決策并下大量訂單。這就是比賽的開始。

在那本令人驚嘆的書《Trading at the speed of Light,光速交易》中,唐納德·麥肯齊解釋了即使在芝加哥場內(nèi)交易的日子里,人們也通過創(chuàng)建系統(tǒng)來適應(yīng)環(huán)境,使某些人的交易速度比其他人快得多。本質(zhì)上,設(shè)計交易是一個可以利用信息不對稱的游戲,如果此時你有一些信息尚未傳達給其他人,那么就存在一種不對稱,你可以預(yù)測其他人在獲得這些信息后會做什么,并據(jù)此做出決定。這種不對稱是套利機會和許多其他可以賺錢的復(fù)雜場景的基礎(chǔ)。由于交易所本身所使用的技術(shù)的重大進步,這些不對稱的機會已經(jīng)變得極為罕見且短暫。

然而,事實是,僅僅因為離交易所較近的人比離交易所較遠的人獲取數(shù)據(jù)的速度更快,也就無法消除這種不對稱現(xiàn)象。那些能夠更快傳輸數(shù)據(jù)的人也是如此(微波塔、租用光纖線路)。同樣,那些能夠在收到數(shù)據(jù)后做出更快決策的人也可以在這場競爭中領(lǐng)先。這正是 HFT 公司聘請 FPGA 工程師來幫助解決的問題。

交易所允許公司在附近的特定建筑物中設(shè)置計算機。無論與哪個股票經(jīng)紀人交易,那里可能都有一臺機器。這稱為主機托管。交易所確保從這些機器到交易所計算機的光纖長度對于主機托管中的每個參與者來說都是完全相同的。

在這種情況下,再靠近交易所的空間已經(jīng)不大了。不過,我們可以做的是盡量減少消化數(shù)據(jù)和發(fā)出訂單所需的時間。為了實現(xiàn)這一點,這些服務(wù)器在處理速度、內(nèi)存速度和延遲方面都擁有極高的規(guī)格。它們被超頻并優(yōu)化到了它們所能提供的極限。

盡管進行了這些優(yōu)化,但 CPU 從根本上來說仍存在兩個對 HFT 不太友好的”怪癖“。

更高的執(zhí)行延遲

238607f2-d923-11ef-9310-92fbcf53809c.png

CPU 需要將算法分解為 ISA 并按順序執(zhí)行,盡管速度可能很快,由于關(guān)鍵路徑中有幾個交互元素,在處理交互元素的過程會產(chǎn)生很大的開銷。

不確定的執(zhí)行延遲

交易算法并不是 CPU 上運行的唯一程序。操作系統(tǒng)同時管理著許多進程和線程。這可能導(dǎo)致同一程序在不同執(zhí)行中花費的時間不同。對于那些押注大量資金并保證該過程將花費一定時間的人來說,這可能是一個巨大的問題。如果只是這一次花費的時間長,就可能意味著巨額損失。

FPGA 如何提供幫助

FPGA 可幫助解決上述兩個主要問題。它們能解決不確定性問題。可以預(yù)先知道某種操作在 FPGA 中需要多少個時鐘周期,并確保在整個操作過程中它不會發(fā)生變化。

FPGA 還經(jīng)常(并非總是)幫助解決高處理延遲的問題。在解碼市場數(shù)據(jù) -> 做出決策 -> 發(fā)送訂單的整個流程中,多個子功能可以使用基于 FPGA 的加速。

FPGA 不能很好地處理復(fù)雜的數(shù)學(xué)運算,因此工程師們仔細分析了它們的處理管道,并找出了實現(xiàn)選擇性過程大幅加速的方法。以下是與 FPGA 連接的交易機的處理流程:

238ed184-d923-11ef-9310-92fbcf53809c.png

截至今天,市場上有許多流行的開發(fā)板,通過處理諸如以太網(wǎng)和 PCIe 之類的一些棘手的模塊,為 HFT 相關(guān)的 FPGA 開發(fā)提供工作臺。

面試準備

現(xiàn)在,對HFT世界有了一個很好的印象,我希望對使用這些尖端工具的興趣會越來越濃厚。讓我們來談?wù)勛鳛?HFT FPGA 工程師在日常工作中需要具備的技能。

數(shù)字電路和 RTL 設(shè)計

精通數(shù)字邏輯、Verilog 和微架構(gòu)開發(fā)。

這些是基礎(chǔ)。應(yīng)聘者需要具備編寫 RTL、調(diào)試和在板上部署 RTL 的經(jīng)驗。面試通常要求應(yīng)聘者當場編寫 RTL。

問題陳述也可能相當復(fù)雜和令人費解,與傳統(tǒng)的 FPGA 工作(例如網(wǎng)絡(luò)或國防工業(yè))不同。這既考驗應(yīng)聘者的智商,也考驗應(yīng)聘者的 RTL 技能。

公司非常重視編寫花費更少時間來完成某項任務(wù)的代碼,這通常需要集思廣益,想出完成同一件事的不同方法,并提出一種低延遲的替代方案,同時保持足夠合理以便在限制時間內(nèi)實現(xiàn)。

狀態(tài)機編碼:狀態(tài)機是FPGA中另一個非常常見的模塊。

先進先出(FIFO):FIFO 無處不在,同步、異步等各種類型。

驗證基礎(chǔ)知識:

如前所述,F(xiàn)PGA 團隊在 HFT 中規(guī)模很小,因此單個開發(fā)人員必須身兼數(shù)職才能完成一個項目。此外,由于交易規(guī)模巨大(一次數(shù)百萬美元),設(shè)計中的一個錯誤就可能導(dǎo)致?lián)p失大量資金,損失金額可能相當于幾年的年薪。

因此驗證成為一項非常重要的任務(wù)。盡管 FPGA 可以多次重新編程,但風險很高,必須小心謹慎,確保不會出現(xiàn)任何錯誤。

為代碼編寫高效的測試臺和測試用例是一項寶貴的技能。對于經(jīng)驗更豐富的人,了解 System Verilog 和 UVM 可能是一個加分點。

網(wǎng)絡(luò)基礎(chǔ)知識:

工作中實際實施的項目通常圍繞網(wǎng)絡(luò)展開。

傳入的市場數(shù)據(jù)通過 TCP 通道傳輸,交易機器需要維護 TCP 連接,這可能是另一個潛在加速的領(lǐng)域。

類似地,可能需要過濾一些數(shù)據(jù),并將其打包成數(shù)據(jù)包發(fā)送到不同的地方(通常是另一個交換機)。TCP 或 UDP 可用于通信的這一部分,這也是一種很好的加速方式。

掌握以太網(wǎng)協(xié)議及其細節(jié)的基本知識在競爭中保持領(lǐng)先大有幫助。

以太網(wǎng)、PCIe 和網(wǎng)絡(luò)架構(gòu)(可選、高級):

許多資金雄厚的大公司自己實現(xiàn)相關(guān)的協(xié)議棧。但大多數(shù)其他公司直接使用經(jīng)過驗證的 IP。只有少數(shù)大公司才需要以下技能。

對于以太網(wǎng),需要掌握的知識非常豐富,包括對 SERDES、PHY 與 PCS 層功能、MAC 層功能以及針對特定目的的潛在優(yōu)化的理解。如果沒有在行業(yè)環(huán)境中進行過相關(guān)實踐,很難獲得這些知識和經(jīng)驗。

推薦下面的文章:

https://support.ixiacom.com/sites/default/files/resources/whitepaper/PCS_white_paper.pdf

PCIe 屬于同一類別。它是另一種廣泛的協(xié)議,包含大量細節(jié)和文檔。除非初學(xué)者使用過它,否則幾乎不可能知道這些。但是,有一些宏觀概念總是好的。

同樣,F(xiàn)PGA 并不是網(wǎng)絡(luò)上唯一的機器,還有許多其他東西,如交換機、NIC、其他交易機器等,它們可以在做出決策時進行交互操作。對網(wǎng)絡(luò)架構(gòu)有充分的了解,并且知道可以調(diào)整哪些方面以獲得那一點點延遲優(yōu)勢,這可能是一個很大的優(yōu)勢。

實用技巧:

靜態(tài)時序分析(STA)

對于初學(xué)者來說,靜態(tài)時序分析是一種測試邏輯是否滿足 FPGA 時序約束和可靠功能的方法。如上所述,推薦下面的文章

https://thedatabus.io/interview_list

這一點非常重要。通常,由于對延遲極其敏感,HFT 應(yīng)用的 RTL 是用非常低的流水線編寫的,可以在更少的時鐘內(nèi)完成大量工作。這顯然會導(dǎo)致綜合、布局布線工具將 LUT 放置得非常近,以改善延遲。

一旦完成并驗證了 RTL 編碼,由于這種擁塞,工具可能無法滿足設(shè)計的 FPGA 的時序,這種情況很常見。這就需要對 STA 有很深的了解,才能處理邏輯并重新構(gòu)建它以嘗試滿足時序。

跨時鐘域 (CDC)

這是任何 RTL 設(shè)計師都需要的一項基本技能,無論是否需要 HFT。幾乎每個面試官在完成 STA 后都會詢問你所了解的不同 CDC 技術(shù)。他們甚至可能會問你為什么一種方法比另一種更好,甚至可能讓你編寫一些代碼。

去讀一下關(guān)于 CDC 的這篇文章,或許對你有所幫助

https://thedatabus.in/cdc_complete_guide

23a2f1b4-d923-11ef-9310-92fbcf53809c.png

假設(shè)使用雙觸發(fā)同步器執(zhí)行 CDC,你會為該元素向 .xdc 文件(約束文件)添加哪些約束?ASFIFO 呢?

區(qū)域優(yōu)化

這與前面提到的時序優(yōu)化密切相關(guān)。

HFT 應(yīng)用的設(shè)計通常不是很大,它們不會占據(jù) FPGA 的大部分空間,但邏輯元件彼此之間距離太近,導(dǎo)致?lián)砣l(fā)各種問題。解決此問題的唯一方法是準確了解 RTL 推斷的內(nèi)容,以及如何對其進行修改以減少擁塞。

通常,對 FPGA 架構(gòu)及其基本元素(LUT、BRAM、DSP 等)的良好了解可以很好的做出決策。

此外,與其只是編寫 RTL 并對其進行仿真,不如將其貫穿整個實施流程(綜合、布局和布線等),這樣可以更深入地了解 RTL 在到達硅片時最終會發(fā)生什么。下一步是嘗試以一種能夠減少資源利用率和設(shè)備區(qū)域擁塞的方式控制這種“推斷”。

硬件測試

網(wǎng)絡(luò)知識

https://beej.us/guide/bgnet/html/#intro

23b08c3e-d923-11ef-9310-92fbcf53809c.png

把這本書從頭到尾讀一遍,然后嘗試在基于 Linux 的計算機上練習所有內(nèi)容。

以太網(wǎng)實踐知識

以太網(wǎng)知識是HFT工作的必需品。學(xué)會一些調(diào)試工具(如wireshark等工具)的使用。

在此過程中,還將使用許多 Linux 命令。

C++ 和驅(qū)動程序

在任何類型的嵌入式系統(tǒng)中,例如帶有 FPGA 的交易機,都需要編寫與硬件對話的驅(qū)動程序。作為 FPGA 開發(fā)人員,需要至少在一定程度上完成這項工作,這足以在真實硬件上測試設(shè)計,并為實際軟件人員提供概念驗證。

金融和交易知識

這不是必需的,也不會要求了解或?qū)W習這一點。

DSA/計算機科學(xué)技能

通常在編寫任何代碼時,為了處理數(shù)據(jù)或測試硬件,將編寫大量軟件。編寫良好的代碼可以大大減少使其運行并完成手頭任務(wù)所需的時間。本著這種精神,如果面試官問你幾個與數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的問題,也不要感到驚訝。

總結(jié)

本文是國外的一個朋友在準備相關(guān)行業(yè)面試的時候總結(jié)的一篇文章,和國內(nèi)可能會有所差異,但是可以作為參考,有從事相關(guān)行業(yè)的大佬可以在評論區(qū)聊聊從事該行業(yè)的注意點~

PS:前面提到的《光速交易》這本書非常有趣,即使沒有在相關(guān)行業(yè)工作,它也能讓你對這個世界有很深的了解。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1654

    文章

    22273

    瀏覽量

    629916
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11213

    瀏覽量

    222775
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11622

    瀏覽量

    217830

原文標題:高頻交易中 FPGA 的作用及面試指南

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術(shù)江湖】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    測試工程師都在用的Linux命令清單(建議收藏)

    的Linux命令,并結(jié)合實際場景解析其應(yīng)用方法。、文件和目錄操作:基礎(chǔ)的基礎(chǔ)1.1件查看命令#查看文件內(nèi)容cat/etc/passwd#顯示完整文件內(nèi)容more/va
    的頭像 發(fā)表于 08-08 10:06 ?483次閱讀
    測試工程師都在用的Linux命令清單(<b class='flag-5'>建議</b>收藏)

    什么是超高頻rfid手持機終端?帶你看懂它的原理與應(yīng)用

    哪些作用?本文將從基礎(chǔ)概念到實際應(yīng)用,為你揭開超高頻RFID手持機終端的神秘面紗。、先搞懂RFID:射頻識別技術(shù)的核心RFID,全稱“RadioFrequencyI
    的頭像 發(fā)表于 08-04 15:59 ?1001次閱讀
    什么是超<b class='flag-5'>高頻</b>rfid手持機終端?<b class='flag-5'>一</b><b class='flag-5'>文</b>帶你看懂它的原理與應(yīng)用

    掌握Linux命令

    作為名運維工程師,熟練掌握Linux命令是基本功的基本功。無論是日常工作的系統(tǒng)維護,還是面試時的技術(shù)考核,Linux命令都是繞不開的核心技能。本文將從實戰(zhàn)角度出發(fā),系統(tǒng)梳理運維工
    的頭像 發(fā)表于 07-22 15:23 ?432次閱讀

    高頻開關(guān)電源模塊的作用

    高頻開關(guān)電源模塊以其高效、靈活、智能的特點,在多個領(lǐng)域發(fā)揮著重要作用。隨著技術(shù)的不斷進步和應(yīng)用場景的不斷拓展,高頻開關(guān)電源模塊將在未來能源管理和電力電子系統(tǒng)扮演更加重要的角色。
    的頭像 發(fā)表于 06-07 14:32 ?1311次閱讀
    <b class='flag-5'>高頻</b>開關(guān)電源模塊的<b class='flag-5'>作用</b>

    FPGA是什么?應(yīng)用領(lǐng)域、差分晶振作用及常用頻率全面解析

    FPGA是什么?了解FPGA應(yīng)用領(lǐng)域、差分晶振在FPGA作用、常用頻率、典型案例及FCom差分振蕩器解決方案,為高速通信、數(shù)據(jù)中心、工業(yè)
    的頭像 發(fā)表于 03-24 13:03 ?2734次閱讀
    <b class='flag-5'>FPGA</b>是什么?應(yīng)用領(lǐng)域、差分晶振<b class='flag-5'>作用</b>及常用頻率全面<b class='flag-5'>解析</b>

    安泰:高頻功率放大器的作用和用途是什么

    高頻功率放大器是種專用于放大高頻信號的設(shè)備,它在現(xiàn)代電子通信、無線傳輸、雷達系統(tǒng)、衛(wèi)星通信和醫(yī)療領(lǐng)域等方面發(fā)揮著重要的作用。在本文中,我們將詳細介紹
    的頭像 發(fā)表于 03-07 11:07 ?847次閱讀
    安泰:<b class='flag-5'>高頻</b>功率放大器的<b class='flag-5'>作用</b>和用途是什么

    硬件面試

    硬件面試
    的頭像 發(fā)表于 02-26 13:55 ?1045次閱讀
    硬件<b class='flag-5'>面試</b>(<b class='flag-5'>一</b>)

    解析工業(yè)互聯(lián)網(wǎng)

    電子發(fā)燒友網(wǎng)站提供《解析工業(yè)互聯(lián)網(wǎng).pptx》資料免費下載
    發(fā)表于 02-20 16:42 ?1次下載

    面試題】人工智能工程師高頻面試題匯總:概率論與統(tǒng)計篇(題目+答案)

    、機器學(xué)習的那些算法,或者深度學(xué)習的框架,還有怎么優(yōu)化模型,Transformer等,這些都是加分項,能有效提高面試通過率。本篇小編整理了高頻的概率論與統(tǒng)計——貝
    的頭像 發(fā)表于 01-22 13:00 ?1374次閱讀
    【<b class='flag-5'>面試</b>題】人工智能工程師<b class='flag-5'>高頻</b><b class='flag-5'>面試</b>題匯總:概率論與統(tǒng)計篇(題目+答案)

    面試題】人工智能工程師高頻面試題匯總:機器學(xué)習深化篇(題目+答案)

    ,或者深度學(xué)習的框架,還有怎么優(yōu)化模型,這些都是加分項,能有效提高面試通過率。本篇小編整理了高頻的機器學(xué)習深化方面的面試題,這些題目都是從實際
    的頭像 發(fā)表于 12-16 13:42 ?3289次閱讀
    【<b class='flag-5'>面試</b>題】人工智能工程師<b class='flag-5'>高頻</b><b class='flag-5'>面試</b>題匯總:機器學(xué)習深化篇(題目+答案)

    面試題】人工智能工程師高頻面試題匯總:Transformer篇(題目+答案)

    ,或者深度學(xué)習的框架,還有怎么優(yōu)化模型,Transformer的些知識,這些都是加分項,能有效提高面試通過率。本篇小編整理了高頻的Transformer方面的面
    的頭像 發(fā)表于 12-13 15:06 ?2369次閱讀
    【<b class='flag-5'>面試</b>題】人工智能工程師<b class='flag-5'>高頻</b><b class='flag-5'>面試</b>題匯總:Transformer篇(題目+答案)

    傅立葉變換在圖像處理作用

    傅里葉變換在圖像處理中發(fā)揮著至關(guān)重要的作用。以下是傅里葉變換在圖像處理的幾個主要作用、圖像增強與去噪 去噪 :圖像的噪聲通常表現(xiàn)為
    的頭像 發(fā)表于 12-06 16:55 ?3047次閱讀

    高頻旁路電容有哪些作用?國內(nèi)有哪些供應(yīng)商?

    在電子電路,高頻旁路電容器是種不可或缺的元件,它在高頻電路中發(fā)揮著重要的作用。本文將詳細介紹高頻
    的頭像 發(fā)表于 12-06 16:33 ?943次閱讀

    人工智能工程師高頻面試題匯總——機器學(xué)習篇

    ,或者深度學(xué)習的框架,還有怎么優(yōu)化模型,這些都是加分項,能有效提高面試通過率。本篇小編整理了高頻的機器學(xué)習方面的面試題,這些題目都是從實際面試
    的頭像 發(fā)表于 12-04 17:00 ?2156次閱讀
    人工智能工程師<b class='flag-5'>高頻</b><b class='flag-5'>面試</b>題匯總——機器學(xué)習篇

    電感在高頻電路作用 電感在開關(guān)電源的應(yīng)用

    電感在高頻電路作用 電感在高頻電路扮演著至關(guān)重要的角色,其主要作用包括阻抗匹配、頻率選擇、
    的頭像 發(fā)表于 12-03 15:54 ?2117次閱讀