
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ, рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА
рдПрд╡рд▓реЙрди-рдПрдордПрдо рдмрд╕ рд╕реЗ рдорд┐рд▓реЗ рдереЗ, рдЬрд╣рд╛рдВ рдПрдордПрдо рдореЗрдореЛрд░реА рдореИрдкреНрдб рдХреЗ рд▓рд┐рдП рдЦрдбрд╝рд╛ рдерд╛, рдпрд╛рдиреА рдореЗрдореЛрд░реА рдкрд░ рдЕрдиреБрдорд╛рдирд┐рддред рдпрд╣ рдЯрд╛рдпрд░ рдХрд╛рдлреА рдмрд╣реБрдореБрдЦреА рд╣реИред рдХрдИ рдорд╛рд╕реНрдЯрд░ (рдорд╛рд╕реНрдЯрд░) рдФрд░ рдХрдИ рджрд╛рд╕ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЗрд╕рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╕рд╛рде рджреЛ рдкреНрд░рдореБрдЦ рдЙрдкрдХрд░рдгреЛрдВ (рдЗрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рдорд╛рд╕реНрдЯрд░ рдФрд░ рдбреЗрдЯрд╛ рдорд╛рд╕реНрдЯрд░) рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ NIOS II рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рдПрдХ рд╣рд╛рд░реНрд╡рд░реНрдб рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреА рдХрдорд╛рдВрдб рдФрд░ рдбреЗрдЯрд╛ рдмрд╕реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрдИ рд▓реЗрдЦрдХ рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╣реА рд╕рд╛рдорд╛рдиреНрдп рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдмрд╛рд╣рд░ рд╕реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╡рд┐рдХрд╛рд╕ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдмрд╕ рдореЗрдВред
рдпрджрд┐ рдмрд╕ рдореЗрдВ рдПрдХ рдмреНрд▓реЙрдХ рдореЗрдВ рдкреНрд░рддреНрдпрдХреНрд╖ рдореЗрдореЛрд░реА рдПрдХреНрд╕реЗрд╕ (рдбреАрдПрдордП) рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдореЗрдВ рдмрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рд╕реНрдЯрд░ рднреА рд╣реЛрдЧрд╛ред
рджрд░рдЕрд╕рд▓, рдЗрд╕ рдЯрд╛рдпрд░ рдХреА рдореБрдЦреНрдп рдЕрд╕реБрд╡рд┐рдзрд╛ рдЗрд╕ рддрдереНрдп (рдХрдИ рдЕрдЧреНрд░рдгреА, рдХрдИ рдЕрдиреБрдпрд╛рдпрд┐рдпреЛрдВ) рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рдЬрдм рд╣рдордиреЗ рдЕрдкрдирд╛ рджрд╛рд╕ рдбрд┐рдЬрд╛рдЗрди рдХрд┐рдпрд╛, рддреЛ рд╣рдореЗрдВ рдкрддрд╛ рдбреАрдХреЛрдб рдХрд░рдирд╛ рдерд╛ред рдЬрдм рдореИрдВ рдЕрдкрдирд╛ рдиреЗрддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реБрдЖ, рддреЛ рдордзреНрдпрд╕реНрдерддрд╛ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЙрдкрджреНрд░рд╡ рд╣реБрдЖред рд▓реЗрдХрд┐рди рд▓реЗрдЦреЛрдВ рдХреА рдкреВрд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд▓рд╛рд▓ рдзрд╛рдЧрд╛ рдпрд╣ рджрд╛рд╡рд╛ рд╣реИ рдХрд┐ рд░реЗрдб рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдПрдХ рд╕рд╣рд╛рдпрдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдЗрд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдФрд░ рдЕрдЧрд░ рд╣рдо рдЦреБрдж рдХреЛ рджрд┐рдирдЪрд░реНрдпрд╛ рд╕реЗ рдореБрдХреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдЦреБрдж рдХреЛ рдЗрд╕рд╕реЗ рдореБрдХреНрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдЪрдХреНрд░ рдХреЗ рд╕рднреА рд▓реЗрдЦ:
- Redd рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд FPGAs рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд░рд▓ "рдлрд░реНрдорд╡реЗрдпрд░" рдХрд╛ рд╡рд┐рдХрд╛рд╕, рдФрд░ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдореЗрдореЛрд░реА рдЯреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд┐рдмрдЧрд┐рдВрдЧ
- Redd рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд FPGAs рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд░рд▓ "рдлрд░реНрдорд╡реЗрдпрд░" рдХрд╛ рд╡рд┐рдХрд╛рд╕ред рднрд╛рдЧ 2. рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛрдб
- FPGA рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреЛрд░ рдХрд╛ рд╡рд┐рдХрд╛рд╕
- FPGA рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рд░реЗрдб рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХрд╛ рд╡рд┐рдХрд╛рд╕
рдПрд╡рд▓реЙрди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ рджрд╕реНрддрд╛рд╡реЗрдЬ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЬреНрдЮрд╛рдд рд╣реИ (рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореИрдВ рд╕реАрдзреЗ рд▓рд┐рдВрдХ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╣рдореЗрд╢рд╛ рдмрджрд▓рддреЗ рд░рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдкреВрд░рд╛ рдиреЗрдЯрд╡рд░реНрдХ рдореГрдд рд▓рд┐рдВрдХ рд╡рд╛рд▓реЗ рд▓реЗрдЦреЛрдВ рд╕реЗ рдЕрдЯреЗ рдкрдбрд╝реЗ рд╣реИрдВред рдЦреЛрдЬ рдЗрдВрдЬрди рдореЗрдВ рдирд╛рдо рдЪрд▓рд╛рдХрд░ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЛ рдЦреЛрдЬрдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдЬреЛ
рдПрд╡рд▓реЙрди-рдПрдордПрдо рдмрд╕ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ,) рдПрдХ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рднреА рд╣реИ, рдЬрд╣рд╛рдВ рдПрд╕рдЯреА рд╕реНрдЯреНрд░реАрдо, рдпрд╛рдиреА рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЦрдбрд╝рд╛ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдмрд╣реБрдд рдмрд╛рд░ рдкреНрд░реЗрд╖рд┐рдд рдбреЗрдЯрд╛ рдореЗрдВ рдПрдХ рдзрд╛рд░рд╛ рд╕рдВрд░рдЪрдирд╛ рд╣реЛрддреА рд╣реИред рд╣рд╛рдВ, рд╣рд╛рд░реНрдб рдбреНрд░рд╛рдЗрд╡ рдХрд╛ рдХреНрд▓рд╛рд╕рд┐рдХ рдХреНрд╖реЗрддреНрд░ рднреАред рдЗрд╕рдХрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕реЗ рд╢реБрд░реВ рд╕реЗ рдЕрдВрдд рддрдХ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рд╣рдо рдЗрд╕реЗ рдкрддрд╛ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдорд╛рдирддреЗ рд╣реИрдВ, рддреЛ рдкрддреЗ рд░реИрдЦрд┐рдХ рд░реВрдк рд╕реЗ рдмрдврд╝реЗрдВрдЧреЗред рдФрд░ рдЕрдЧрд░ рдЖрдк рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдлреАрдлреЛ рдмреНрд▓реЙрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдХреЗ рдкрддреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдорд╕реЗ рдЫрд┐рдкреЗ рд╣реБрдП рд╣реИрдВред рд╡реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╣рдорд╛рд░реА рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рд╣реИред
рдпрд╣реА рдмрд╛рдд рдХрдИ рдЕрдиреНрдп рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдбреЗрдЯрд╛ рдкрд░ рднреА рд▓рд╛рдЧреВ рд╣реЛрддреА рд╣реИ: рд╡реЗ рд╣рдореЗрд╢рд╛ рд╢реБрд░реБрдЖрдд рд╕реЗ рдЕрдВрдд рддрдХ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреЛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рд░рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВред рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╡реИрд╕рд╛ рд╣реА рд╣реИ рдЬреИрд╕реЗ рдРрд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕реНрдкрд╖реНрдЯ рдкрддреЗ рдХреА рдХрдореА рдХреЗ рдЕрд▓рд╛рд╡рд╛,
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ рдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рджреЛ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ: рдПрдХ рд╕реНрд░реЛрдд рдФрд░ рдПрдХ рд░рд┐рд╕реАрд╡рд░ред рд╣рдореЗрд╢рд╛ рдЙрдирдореЗрдВ рд╕реЗ рджреЛ рд╣реЛрддреЗ рд╣реИрдВред рдПрдХ рдЙрдкрдХрд░рдг рд╣рдореЗрд╢рд╛ рд╕реНрд░реЛрдд рд╣реЛрддрд╛ рд╣реИ, рджреВрд╕рд░рд╛ рд╣рдореЗрд╢рд╛ рд░рд┐рд╕реАрд╡рд░ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рдмрд╕ рдХреА рдордзреНрдпрд╕реНрдерддрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред рдпрд╣ рдЗрд╕ рдмрд╕ рд╕реЗ рдЬреБрдбрд╝реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЬреЛрдбрд╝реА рд╣реИ:

рдФрд░ рдпрд╣рд╛рдБ рдЗрд╕ рдмрд╕ рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдХреЗрдд рд╣реИрдВ:

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛,
рддреНрд░реБрдЯрд┐ рд▓рд╛рдЗрдиреЗрдВ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИрдВ, рд╡реЗ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЕрд╕рд╛рдЗрди рдХрд┐рдП рдЧрдП рдмрд╛рдЗрдирд░реА рддреНрд░реБрдЯрд┐ рдХреЛрдб рдХреЛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдХреЛрдб рдирд╣реАрдВ рд╣реИрдВред рдФрд░ рдЪреИрдирд▓ рд╕рдВрдЦреНрдпрд╛ рд░реЗрдЦрд╛рдПрдБ, рдЬреИрд╕рд╛ рдХрд┐ рд╣рдордиреЗ рдКрдкрд░ рджреЗрдЦрд╛ рдерд╛, рдХреЗрд╡рд▓ рддрднреА рдЬрд░реВрд░рдд рд╣реЛрддреА рд╣реИ рдЬрдм рдбрд┐рдореЙрд▓реАрдкреНрд▓реЗрдХреНрд╕рд┐рдВрдЧ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛рдПред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЪреИрдирд▓ рдирдВрдмрд░ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред рд╣рдо рдЕрднреА рдЗрд╕рдХреЗ рд▓рд┐рдП рдмрд┐рдирд╛ рдХрд░реЗрдВрдЧреЗред рддреАрди рд▓рд╛рдЗрдиреЗрдВ рд░рд╣рддреА рд╣реИрдВ: рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдбреЗрдЯрд╛, рдПрдХ рддреИрдпрд╛рд░ рд╕рд┐рдЧреНрдирд▓ рдФрд░ рдПрдХ рдбреЗрдЯрд╛ рдкреБрд╖реНрдЯрд┐рдХрд░рдг рд╕рд┐рдЧреНрдирд▓ (рд╕реНрдЯреНрд░реЛрдм)ред рдЦреИрд░, рдПрдХ рдФрд░ рдШрдбрд╝реА рд╕рдВрдХреЗрдд, рдХреНрдпреЛрдВрдХрд┐ рдмрд╕ рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд╣реИред
рдкреНрд░рд▓реЗрдЦрди рд╕реЗ рдпрд╣ рднреА рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рддреАрди рдФрд░ рд╕рдВрдХреЗрдд рд╕рдВрднрд╡ рд╣реИрдВ, рдмрд╕ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдкреИрдХреЗрдЯ рдХреЗ рд╕рдВрдЪрд░рдг рдЧреБрдгреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛:

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЯрд╛рдпрд░ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдФрд░ рдЖрдЬ рд╣рдо рдЗрд╕рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рд╢реБрд░реВ рдХрд░реЗрдВрдЧреЗред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВ, FPGA
FT2432 -SYNC рдореЛрдб рдореЗрдВ рдЪрд▓ рд░рд╣реЗ
FT2232H рдмреНрд░рд┐рдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░реЗрдб рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕ рдХреА USB рдмрд╕ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реИред рдХрдбрд╝реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЗрд╕ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╕реЗ рдЧреБрдЬрд░рдиреЗ рд╡рд╛рд▓рд╛ рдбреЗрдЯрд╛ рдХрд╛рдлреА рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдбреЗрдЯрд╛ рд╣реИред рдЖрдЬ рд╣рдо рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ NIOS II рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рдЕрдкрдиреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХреИрд╕реЗ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдпрд╣ рдЕрдлрд╝рд╕реЛрд╕ рдХреА рдмрд╛рдд рд╣реИ рдХрд┐
FT245-SYNC рдкреНрд░реЛрдЯреЛрдХреЙрд▓, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ,
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЪрд┐рдк рдкреИрд░реЛрдВ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕рдореЗрдВ рдПрдХ рджреНрд╡рд┐-рджрд┐рд╢рд╛рддреНрдордХ рдбреЗрдЯрд╛ рдмрд╕ рд╣реИ, рдФрд░
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рдпреВрдирд┐рдбрд╛рдпрд░реЗрдХреНрд╢рдирд▓ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ рдРрд╕рд╛ рдмреНрд▓реЙрдХ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдХреНрд▓рд┐рдирд┐рдХреНрд╕ рдХрд╛ рдорд┐рд▓рд╛рди рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдХрд░реАрдмреА рд╕рдордиреНрд╡рдп рдХрд░реЗред
рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ
FT245-SYNC рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд
рд╣реИрдВ ред рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛ рджреВрдВ рдХрд┐ рдЗрд╕рдХрд╛ рд╡рд┐рд╡рд░рдг рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
AN_130 FT2232H рдЬрд┐рд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ FT245 рд╕реНрдЯрд╛рдЗрд▓ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдлрд┐рдлреНрдЯреА рдореЛрдб рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ред рдпрд╣рд╛рдВ рдПрдХ рдкреБрд▓ рд╕реЗ рдПрдХ FPGA рддрдХ рд╕рдВрдЪрд░рдг рдХрд╛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдордп рдЖрд░реЗрдЦ рд╣реИ

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдЗрд╕ рддрдереНрдп рдореЗрдВ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдкреА рд░рдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдкреНрд░реЗрд╖рд┐рдд рдкреИрдХреЗрдЬ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рдФрд░ рдЕрдВрдд рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рд╣реЛрдЧрд╛ред рдЦреИрд░, рдпреВрдбреАрдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рддрд░реНрдХ рдореЗрдВ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рддрд╛рд░реНрдХрд┐рдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЪреВрдВрдХрд┐ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдЯреАрд╕реАрдкреА рд╢реИрд▓реА рдореЗрдВ рд╣реИ, рдЖрдкрдХреЛ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдбреЗрдЯрд╛ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдХрд┐ рдореЗрд░реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ, рдкреНрд░рдпрд╛рд╕реЛрдВ рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЪрдХреНрд░реЛрдВ рдкрд░ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ ... рдпрд╣ RXF рд▓рд╛рдЗрди рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ рдЗрд╕рдореЗрдВ рд╣рдорд╛рд░реА рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ ... рд╣рдо
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдХрд┐рдП рдЧрдП рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП FPGA рдореЗрдВ "рдлрд░реНрдорд╡реЗрдпрд░" рднрд░рддреЗ рд╣реИрдВ, рдФрд░ рдСрдХреНрд╕рд┐рд▓реЛрд╕реНрдХреЛрдк рдЬрд╛рдВрдЪ рдХреЛ рдЖрд░рдПрдХреНрд╕рдПрдл рд▓рд╛рдЗрди рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рд░реЗрдбреНрдб рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо рдЖрдзрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рднреЗрдЬрдиреЗ рдХреЗ рдмрдЬрд╛рдп, рд╣рдо 0x400 рдмрд╛рдЗрдЯреНрд╕ рдХрд╛ рдПрдХ рдЕрдЦрдВрдб рдмреНрд▓реЙрдХ рднреЗрдЬрддреЗ рд╣реИрдВред
uint8_t temp [maxBlockSize]; memset (temp,0,sizeof (temp)); uint32_t dwWritten; FT_Write(ftHandle0, temp, 0x400, &dwWritten);
рд╣рдореЗрдВ RXF рд▓рд╛рдЗрди рдкрд░ рдирд┐рдореНрди рдЪрд┐рддреНрд░ рдорд┐рд▓рддрд╛ рд╣реИ:

рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ microcircuit 0x200 рдмрд╛рдЗрдЯреНрд╕ рдмрдлрд╝рд░ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ (рдХрд┐ рдпрд╣ рдПрдХ рдпреВрдПрд╕рдмреА 2.0 рдПрдЪрдПрд╕ рдкреИрдХреЗрдЯ рдореЗрдВ рдХрд┐рддрдирд╛ рдЖ рд╕рдХрддрд╛ рд╣реИ), рддреЛ рдпрд╣ рдЙрдиреНрд╣реЗрдВ рдЪреИрдирд▓ рдкрд░ рднреЗрдЬрддрд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рдЕрдЬреАрдм рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рд▓реЗрдЦрди рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рджрд┐рд╢рд╛ рдореЗрдВ рджреЛ рдмрдлрд╝рд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рдВрдЪрд░рдг рдХреЗ рджреМрд░рд╛рди, рджреВрд╕рд░реЗ рдмрдлрд░ рдХреЛ рднрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдЕрдлрд╕реЛрд╕ред рдЗрд╕рдХреЗ рднрд░рдиреЗ рдХрд╛ рдЕрдВрдд рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджреЗрд░ рд╕реЗ рд╣реЛрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 52 рдореЗрдЧрд╛рдмрд╛рдЗрдЯреНрд╕ рддрдХ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ: рд╕рдордп рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдкреНрд░рддрд┐рд╢рдд (рдпрджреНрдпрдкрд┐ 50% рдирд╣реАрдВ) рдмрд╕ рдкреНрд░рд╕рд╛рд░рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдПрдХ рддрд░рд╣ рд╕реЗ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп, рдФрд░ рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдПрдХ рдкреИрдХреЗрдЯ рдХреА рд╢реБрд░реБрдЖрдд рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ RXF рдХрд┐рдирд╛рд░реЗ рдкрд░ рд╣реА рд╕рдВрднрд╡ рд╣реИ, рдЕрдЧрд░ рдкреИрдХреЗрдЯ рдХрд╛ рдЖрдХрд╛рд░ 0x200 рдмрд╛рдЗрдЯреНрд╕ рд╕реЗ рдЕрдзрд┐рдХ рди рд╣реЛред рдпрджрд┐ рд╣рдо рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдХреЗрд╡рд▓ рдереЛрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрдорд╛рдВрдб рднреЗрдЬрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХрд╛рдлреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдо рдбреЗрдЯрд╛ рдХреА рдмрдбрд╝реА рдзрд╛рд░рд╛рдПрдБ рднреЗрдЬрддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ UART (рдпрд╛, рдЯреАрд╕реАрдкреА рдЪреИрдирд▓ рд╕реЗ рдХрд╣рдирд╛) рдХреЗ рддрд░реНрдХ рдХреЗ рд╕рдорд╛рди, рдПрдХ рдирд┐рд░рдВрддрд░ рдЪреИрдирд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдкреИрдХреЗрдЯ рд╕реАрдорд╛рдУрдВ рдХреЛ рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдХ рд░реВрдк рд╕реЗ рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдкреНрд░рд╕реНрддреБрддрд┐ рдХреА рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рд╣рдо рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рд╕рдВрд╕реНрдХрд░рдг рд▓реЗрддреЗ рд╣реИрдВред рд╣рдо рдЖрдЬ рдкреИрдХреЗрдЬреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдЦреИрд░,
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд╣рдо рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддреЗ рд╣реИрдВ, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИред рд╣рдо рдЕрдкрдиреЗ рдмреНрд▓реЙрдХ рдХреЛ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдкреБрд▓ рдирд╣реАрдВ рдмрдирд╛рдирд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рд╕реНрд╡рд┐рдЪ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐
FT245FIFO рдмрд╕ рджреНрд╡рд┐рджрд┐рд╢ рд╣реИ, рдФрд░
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рдпреВрдирд┐рдбрд╛рдпрд░реЗрдХреНрд╢рдирд▓ рд╣реИред рдпрд╣реА рд╣реИ, рдПрдХ рдмрд╛рд░ рдореЗрдВ рджреЛ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕реЗрдВ рдмрдирд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ: рдЖрдЙрдЯрдкреБрдЯ рдФрд░ рдЗрдирдкреБрдЯред

рд╣рдо рдПрдХ рдСрдЯреЛрдореЗрдЯрди рдХреЛ рдзреАрд░реЗ-рдзреАрд░реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рддрд░реНрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдЧрд╛ред рдмреЗрд╢рдХ, рд▓реЗрдЦ рдореЗрдВ рдЗрд╕ рддрд░реНрдХ рдХреЛ рдЕрдзрд┐рдХрддрдо рд╕рд░рд▓реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдЗрдП FPGA рд╕реЗ рдкреАрд╕реА рдкрд░ рдбреЗрдЯрд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдереЛрдбрд╝реА рд╕рд░рд▓ рд╣реИ (рдЖрдкрдХреЛ OE рд▓рд╛рдЗрди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдордиреЗ
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдмрд╛рдд рдХреА рдереА)ред рдпрд╣реА рд╣реИ, рд╣рдо рд╕рд┐рдВрдХ рдкреЛрд░реНрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рдХреА рддрд░рдл рд╕реЗ, рдореИрдВрдиреЗ рдСрдкрд░реЗрд╢рди рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЛрдб рдХреЛ рдЪреБрдирд╛ (рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ рдорд╣рд╛рди рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ
FT245-SYNC рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд╕рдмрд╕реЗ рдХрд░реАрдм рд╣реИ):

рдореБрдЭреЗ рд╕рдВрдХреЗрддреЛрдВ рдХреА рджрд┐рд╢рд╛ рдпрд╛рдж рджрд┐рд▓рд╛рдиреЗ рджреЗрдВ:

рдпрд╣реА рд╣реИ, рд╣рдо рдмрд╕ (
рд╡реИрдз ) рдкрд░ рдкреБрд╖реНрдЯрд┐ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ, рдбреЗрдЯрд╛ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдЗрд╕ рддрдереНрдп рдХреЛ
рддреИрдпрд╛рд░ рд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдЧреЗрдЯ рдХрд░реЗрдВред
FT245_FIFO рдкрдХреНрд╖ рд╕реЗ
, рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ TXE рд╕рд┐рдЧреНрдирд▓ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдбрдмреНрд▓реНрдпреВрдЖрд░ # рд╕рд┐рдЧреНрдирд▓ (рдЗрди рджреЛрдиреЛрдВ рд╕рд┐рдЧреНрдирд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдзреНрд░реБрд╡реАрдпрддрд╛ рд╡реНрдпреБрддреНрдХреНрд░рдо рд╣реИ) рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛ рдХреЛ рдЧреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
TXE #
рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИ, рдФрд░ WR #
рд╡реИрдз рд╣реИ ред рд╡рд┐рд╡рд░рдг рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рд╣реИрдВ, рд▓реЗрдХрд┐рди рддрд░реНрдХ рд╕рдорд╛рди рд╣реИред
рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдо рдПрдХ рдПрдХрд▓ рд░рд╛рдЬреНрдп рдХреЗ рдПрдХ рд░рд╛рдЬреНрдп рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдХреБрдЫ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд╕рд░рд▓рддрдо рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдЗрд╕ рд░рд╛рдЬреНрдп рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХреЗ рд▓рд┐рдП рд╕рдВрдЪрд░рдг рдХреЗ рд▓рд┐рдП рджреЛрдиреЛрдВ рдкрдХреНрд╖реЛрдВ рдХреА рддрддреНрдкрд░рддрд╛ рд╣реЛрдЧреА, рдЕрд░реНрдерд╛рдд (TXE # == 0) рдФрд░ (рдорд╛рдиреНрдп == 1)ред рдЬреИрд╕реЗ рд╣реА рдХреБрдЫ рддрддреНрдкрд░рддрд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреА рд╣реИ, рд╣рдо рд╡рд╛рдкрд╕ рдмреЗрдХрд╛рд░ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред
рдСрдЯреЛрдореЗрдЯрди рдХрд╛ рд╕рдВрдХреНрд░рдордг рдЧреНрд░рд╛рдл рдЕрднреА рднреА рд╕рд░рд▓ рд╣реИ:

рдФрд░ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдЯреЗрдмрд▓ рдЗрд╕ рддрд░рд╣ рд╣реИ (рдЬрд╣рд╛рдВ рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рдирд╛рдо рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИрдВ, рд╕реВрдЪрдХ рдЙрди рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдирд╛рдо рдЕрджреНрд╡рд┐рддреАрдп рд╣реИрдВ - рдХреЛрдИ рд╕реВрдЪрдХ рдирд╣реАрдВ рд╣реИрдВ):
рд╕реНрд░реЛрдд рд╕реЗ FT245_FIFO рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдкрд░ рдЖрдЧреЗ рдмрдврд╝ рд░рд╣рд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдордиреЗ
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рджреЗрдЦрд╛
рдерд╛ , рдЬрдЯрд┐рд▓рддрд╛ OE # рд╕рдВрдХреЗрдд рдХреЗ рд╕рд╛рде рджрд┐рд╢рд╛ рдмрджрд▓ рд░рд╣реА рд╣реИ:
рдПрд╡рд▓реЙрди_рдПрд╕рдЯреА рдмрд╕ рдХреЗ рд▓рд┐рдП
, рд╕рдм рдХреБрдЫ рдкрд╣рд▓реЗ рдЬреИрд╕рд╛ рд╣реА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЪрд┐рддреНрд░реЛрдВ рдХреЛ рджреВрд╕рд░реА рдмрд╛рд░ рдирд╣реАрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдм рд╣рдо рд╕реНрд░реЛрдд рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИрдВред
рдпрд╣рд╛рдВ, рдЖрд░рдПрдХреНрд╕рдПрдл # рд▓рд╛рдЗрди
рд╡реИрдз рд▓рд╛рдЗрди рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ, рдФрд░ рдЖрд░рдбреА # рд▓рд╛рдЗрди
рддреИрдпрд╛рд░ рд▓рд╛рдЗрди рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИред рдареАрдХ рд╣реИ, рдареАрдХ рд╣реИ, рдорд╢реАрди рдореЗрдВ рдХреБрдЫ рд░рд╛рдЬреНрдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝реЗрдВ:

рдФрд░ рдЗрд╕ рд░рд╛рдЬреНрдп рдореЗрдВ рд╕рдХреНрд░рд┐рдп рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд░реНрдХ:
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдпрд╣ рдпреЛрдЬрдирд╛ рд╕рдмрд╕реЗ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рдереАред рдмрдлрд╝рд░ рдУрд╡рд░рд░рди рдпрд╛ рдЕрдВрдбрд░рд░реВрди рд╕реЗ рдЬреБрдбрд╝реА рд╡рд┐рднрд┐рдиреНрди рдмрд╛рд░реАрдХрд┐рдпрд╛рдВ рд╣реИрдВред рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рддрд░рд╣ рдХрд╛ рдбреЗрдЯрд╛ рдиреБрдХрд╕рд╛рди рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╖реНрдЯрддрдорддрд╛ рдХреЗ рд▓рд┐рдП рд╣реИ, рдЖрдкрдХреЛ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рд╕реЗ рд╢реБрд░реБрдЖрдд рдХрд░рдиреА рд╣реЛрдЧреА!
рд╣рдо рд╡рд┐рдХрд╕рд┐рдд рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ SystemVerilog рдХреЛрдб рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рд╕рд╣реА рд╣реИ, рд╣рдо SystemVerilog рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдПрдХ рдорд╛рдорд▓рд╛ рдерд╛, рдореИрдВрдиреЗ рдПрдХ
рдмрдбрд╝рд╛ рд▓реЗрдЦ рд▓рд┐рдЦрд╛ рдерд╛, рдЬрд╣рд╛рдВ рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдорд╛рд╣реМрд▓ рдХреЗ рд╕рд╛рде рдЗрд╕ рднрд╛рд╖рд╛ рдХреА рд╕реБрдВрджрд░ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдерд╛ред рдпрд╣рд╛рдВ рд╣рдо рд╕рд┐рд░реНрдл рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдкреНрд░рдХрд╛рд░ рдХреЗ рджреЛ рдЙрджрд╛рд╣рд░рдг рд╣реЛрдВрдЧреЗред рдХрд╛рд╢ рдФрд░ рдЖрд╣ред рдпрд╣рд╛рдБ рдкрд░реАрдХреНрд╖рдг рдХреЛрдб рд╣реИ:
interface AvalonST #(parameter width=8)(input clk); logic [width-1:0] data; logic ready; logic valid; modport source (input clk, ready, output data,valid); modport sink (input clk, data, valid, output ready); endinterface module FT245toAvalonST ( AvalonST.source source, AvalonST.sink sink ); //assign source.ready = sink.valid; assign sink.ready = source.valid; endmodule
рдпрд╣ рдореБрдЦреНрдп рд╕рдВрдХрд▓рдХ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рд╣реЛрддрд╛ рд╣реИ (рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдкрдВрдХреНрддрд┐ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рд╕рд┐рдВрдереЗрд╕рд╛рдЗрдЬрд╝рд░ рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ), рд▓реЗрдХрд┐рди рдЗрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдПрдХ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП
рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕рдВрд╢реНрд▓реЗрд╖рдг рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдЯрди рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╕рдордп, рдПрдХ рддреНрд░реБрдЯрд┐
рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ рдХрд┐ рдЯрд╛рдЗрдк
рдПрд╡рд▓реЙрдирд╕реНрдЯ рдЕрдЬреНрдЮрд╛рдд рд╣реИред рдпрд╣реА рд╣реИ, рд╡рд╣рд╛рдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг SystemVerilog рдкрд░ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рд╢реБрджреНрдз Verilog рдкрд░ рд╣реИред рдХреНрдпрд╛ рдЕрдлрд╝рд╕реЛрд╕ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рднрд╛рд╖рд╛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ, рдмрд╕ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЗ рдмреАрдЪ рдХреЗ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЛ рдирд╣реАрдВ рд╕рдордЭрддрд╛ рд╣реИред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрдкрдХреЛ рдмрджрд╕реВрд░рдд рдкреБрд░рд╛рдиреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЗрд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЙрдбреНрдпреВрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдорд┐рд▓рддрд╛ рд╣реИ: module FT245toAvalonST ( input clk, input reset, inout [7:0] ft245_data, input logic ft245_rxf, input logic ft245_txe, output logic ft245_rd, output logic ft245_wr, output logic ft245_oe, output logic ft245_siwu, input logic source_ready, output logic source_valid, output logic[7:0] source_data, output logic sink_ready, input logic sink_valid, input logic[7:0] sink_data );
рдЕрд╕рднреНрдп, рд╡рд┐рдВрдЯреЗрдЬ, рд▓реЗрдХрд┐рди рдЖрдк рдХреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рдо рдмрд┐рдирд╛ рдХрд┐рд╕реА рддрд╛рдордЭрд╛рдо рдХреЗ рдСрдЯреЛрдореЗрдЯрди рдХреЗ рд╕рдВрдХреНрд░рдордг рдЧреНрд░рд╛рдл рдХрд╛ рдПрд╣рд╕рд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ: // enum {idle, toPC, dropOE, fromPC} state = idle; // always_ff @(posedge clk,posedge reset) begin if (reset == 1) begin state <= idle; end else begin case (state) idle: begin if ((ft245_txe == 0) && (sink_valid == 1)) state <= toPC; else if ((ft245_rxf == 0)&&(source_ready == 1)) state <= dropOE; end toPC: begin if (!((ft245_txe == 0) && (sink_valid == 1))) state <= idle; end dropOE: begin state <= fromPC; end fromPC: begin if (!((ft245_rxf == 0)&&(source_ready == 1))) state <= idle; end endcase end end
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдкреНрд░рддрд┐рд╖реНрдард╛рдиреЛрдВ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ "рдорд╛рдереЗ рдкрд░" рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: // // , , // - . always_comb begin ft245_oe <= 1; ft245_rd <= 1; ft245_wr <= 1; source_valid <= 0; sink_ready <= 0; // , // assign- case (state) idle: begin end toPC: begin ft245_wr <= !(sink_valid); sink_ready <= !(ft245_txe); end dropOE: begin ft245_oe <= 0; end fromPC: begin ft245_oe <= 0; ft245_rd <= !(source_ready); source_valid <= !(ft245_rxf); end endcase end
рд▓реЗрдХрд┐рди, рдХрд╣рддреЗ рд╣реИрдВ, рджреНрд╡рд┐-рджрд┐рд╢рд╛рддреНрдордХ рдбреЗрдЯрд╛ рдмрд╕ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдорд╛рдзрд╛рди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рднрд╛рдЧ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
inout [7:0] ft245_data,
рдФрд░ рдЗрд╕рд╕реЗ рдкрдврд╝рдиреЗ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХреЗрд╡рд▓ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рдХреЗ рдбреЗрдЯрд╛ рдкрд░ рд╕рднреА рдбреЗрдЯрд╛ рд▓рдкреЗрдЯрддреЗ рд╣реИрдВ:
// assign source_data = ft245_data;
рд▓реЗрдХрд┐рди рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрдк рд╣рдореЗрд╢рд╛ рдмрд╕ рд╕реЗ рдФрд░ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдорд▓реНрдЯреАрдкреНрд▓реЗрдХреНрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬрдм рд╣рдо рдмрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдбреЗрдЯрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреВрд░реНрд╡-рддреИрдпрд╛рд░ рдмрд╕ рд╕реЗ рдЖрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдорддреМрд░ рдкрд░, рдкреНрд░рдХрд╛рд░
reg (рдпрд╛ newfangled
рддрд░реНрдХ ) рдХрд╛ рдПрдХ рдЪрд░ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ
рдШрд╛рд╡ рд╣реИ ред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдРрд╕реА рдмрд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореМрдЬреВрдж рд╣реИред рдпрд╣
рд╕рд┐рдВрдХ_рдбрд╛рдЯрд╛ рдмрд╕ рд╣реИред рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд░рд╛рдЬреНрдп Z рдЖрдЙрдЯрдкреБрдЯ рд╣реИред рдпрджрд┐ рдЖрдк рд╕рд░реНрдХрд┐рдЯрд░реА рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рддреЛ рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдмрдлрд░ рд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВред рдпрд╣ рдпрд╛ рддреЛ рдХрд┐рд╕реА рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ, рдпрд╛ рдЬреЗрдб-рд╕реНрдЯреЗрдЯ рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдХреЛрдб рдореЗрдВ, рдпрд╣ рдмрд╣реБрд╕рдВрдХреЗрддрдХ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
// inout- assign ft245_data = (state == toPC) ? sink_data : 8'hzz;
рдФрд░ рдПрдХ рдФрд░ рд╕рдВрдХреЗрдд ft245_siwuред рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрднреА рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП FT2232H рдкрд░ рдкреНрд░рд▓реЗрдЦрди рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕реЗ рдПрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдЦреАрдВрдЪреЗрдВ:
// FTDI : // Tie this pin to VCCIO if not used. assign ft245_siwu = 1;
рджрд░рдЕрд╕рд▓, рдмрд╕ рдЗрддрдирд╛ рд╣реАред
рдкреВрд░рд╛ рдореЙрдбреНрдпреВрд▓ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ: module FT245toAvalonST ( input clk, input reset, inout [7:0] ft245_data, input logic ft245_rxf, input logic ft245_txe, output logic ft245_rd, output logic ft245_wr, output logic ft245_oe, output logic ft245_siwu, input logic source_ready, output logic source_valid, output logic[7:0] source_data, output logic sink_ready, input logic sink_valid, input logic[7:0] sink_data ); // enum {idle, toPC, dropOE, fromPC} state = idle; // always_ff @(posedge clk,posedge reset) begin if (reset == 1) begin state <= idle; end else begin case (state) idle: begin if ((ft245_txe == 0) && (sink_valid == 1)) state <= toPC; else if ((ft245_rxf == 0)&&(source_ready == 1)) state <= dropOE; end toPC: begin if (!((ft245_txe == 0) && (sink_valid == 1))) state <= idle; end dropOE: begin state <= fromPC; end fromPC: begin if (!((ft245_rxf == 0)&&(source_ready == 1))) state <= idle; end endcase end end // // , , // - . always_comb begin ft245_oe <= 1; ft245_rd <= 1; ft245_wr <= 1; source_valid <= 0; sink_ready <= 0; // , // assign- case (state) idle: begin end toPC: begin ft245_wr <= !(sink_valid); sink_ready <= !(ft245_txe); end dropOE: begin ft245_oe <= 0; end fromPC: begin ft245_oe <= 0; ft245_rd <= !(source_ready); source_valid <= !(ft245_rxf); end endcase end // - c , ... // FTDI : // Tie this pin to VCCIO if not used. assign ft245_siwu = 1; // inout- assign ft245_data = (state == toPC) ? sink_data : 8'hzz; // assign source_data = ft245_data; endmodule
рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХреА рд╕реВрдЪреА рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХреИрд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП, рд╣рдордиреЗ
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЬрд╛рдВрдЪ рдХреА, рдЗрд╕рд▓рд┐рдП рдореИрдВ рд╕рд┐рд░реНрдл рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рддрд╛ рд╣реВрдВред рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдХрд┐ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рджреЛ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕реЗрдВ, рдПрдХ
рдХреЛрдВрдбрд┐рдЯ рдмрд╕ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдерд╛, рдПрдХ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд
рдПрд╡рд▓реЙрди-рдПрдордПрдо рдмрд╕ рд╕реЗ рд╕рд┐рдЧреНрдирд▓ рдЦреАрдВрдЪрдирд╛, рдФрд░ рдЬрдм рдЙрд╕ рдмрд╕ рдореЗрдВ рдПрдХ рднреА рд╕рд┐рдЧреНрдирд▓ рдирд╣реАрдВ рдмрдЪрд╛ рд╣реИ, рддреЛ рдмрд╕ рдЗрд╕реЗ рдЫреЛрдбрд╝ рджреЗрдВред рд░рд╛рд╕реНрддреЗ рдХреЗ рд╕рд╛рде, рдЖрдВрдХрдбрд╝рд╛
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕реЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЪреБрдиреА рдЧрдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рджрд┐рдЦрд╛рддрд╛ рд╣реИ (8 рдмрд┐рдЯ рдкреНрд░рддрд┐ рдкреНрд░рддреАрдХ, рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ, рдЕрдзрд┐рдХрддрдо рдЪреИрдирд▓ рд╢реВрдиреНрдп рд╣реИ, рд╡рд┐рд▓рдВрдмрддрд╛ рд╢реВрдиреНрдп рд╣реИ)ред

рдбреЙрдХрд┐рдВрдЧ рдЯрд╛рдпрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд╛рде - рдпрд╣реА рд╣реИред рд▓реЗрдХрд┐рди рдЕрдлрд╕реЛрд╕, рдЖрд╣ред рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдХрд╛рдо рдХреА рд╢реБрд░реБрдЖрдд рд╣реИред рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЕрдзрд┐рдХ рдХрдард┐рди рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд╕реНрдХреНрд░реАрди рдкрд░ рдШреБрдордХреНрдХрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐ рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдЦ рдХрд╛ рдЕрдВрдд рдЕрднреА рднреА рджреВрд░ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ
рдПрд╡рд▓рд╛рдпрди -рдПрд╕рдЯреА рдмрд╕реЛрдВ рдХреЗ рд╕рд╛рде
FT245-SYNC рдмрд╕ рд╕рдВрдпреБрдХреНрдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╣реИред рдПрдХ рдЧрдВрднреАрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдПрдХ рдЙрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреЗ рдПрдХрд▓ рд▓реЗрдЦ рдХреЗ рдврд╛рдВрдЪреЗ рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдореИрдВ рдЕрдм рд╕рд░рд▓реАрдХрд░рдг рдХреЗ рдмрд╛рдж рд╕рд░рд▓реАрдХрд░рдг рдХрд░реВрдВрдЧрд╛ рддрд╛рдХрд┐ рдкрд╛рдардХреЛрдВ рдХрд╛ рдзреНрдпрд╛рди рдмрд╛рдХреА рдкрд╛рда рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛ рддрд╛рдХрд┐ рд╡реЗ рдПрдХ рд╢рдмреНрдж рдореЗрдВ рдкрдврд╝рдирд╛ рди рдЫреЛрдбрд╝реЗрдВред рдкрд╣рд▓рд╛ рд╕рд░рд▓реАрдХрд░рдг рдпрд╣ рд╣реИ рдХрд┐
FT245_SYNC рдХреЗ рд▓рд┐рдП 60 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ
рдШрдбрд╝рд┐рдпреЛрдВ рдХреЛ
FT2232H рдЪрд┐рдк рджреНрд╡рд╛рд░рд╛ рд╣реА рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛
рд╣реИ ред рдореИрдВ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рджреЛ рдШрдбрд╝реА рд▓рд╛рдЗрдиреЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЬреИрд╕реЗ рд╣реА рд╣рд░ рдХреЛрдИ рдЗрд╕реЗ рджреЗрдЦрддрд╛ рд╣реИ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рддрд╛рд░реЛрдВ рдХреЗ рдРрд╕реЗ рд╕рд┐рд▓рдмрдЯреНрдЯреЗ рд╣реЛрдВрдЧреЗ рдЬреЛ рдореЗрд░реА рдорд╛рдВ рдХреЛ рд╢реЛрдХ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рдореИрдВ рдЕрднреА рднреА рд╡рд┐рднрд┐рдиреНрди рдШрдбрд╝реА рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ, рддреЛ рд╣рдо рд╕рднреА рднреНрд░рдорд┐рдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдмрд╕ рдШреЛрд╖рдгрд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдЬ рд╣рдорд╛рд░рд╛ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо
рдПрдлрдЯреА 2232 рдПрдЪ рдЪрд┐рдк рд╕реЗ рд╣реЛрдЧрд╛, рди рдХрд┐ рдПрдХ рдирд┐рдпрдорд┐рдд рдЬрдирд░реЗрдЯрд░ рд╕реЗред
рдЖрдк рд╣рдореЗрд╢рд╛ рдРрд╕рд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ? рдмрд╣реБрдд рд╕рд░рд▓: рдЬрдм рддрдХ
FT2232H 245_SYNC рдореЛрдб рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рддрдм рддрдХ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдпреЗ рджрд╛рд▓реЗрдВ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВред рдпрд╣реА рд╣реИ, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рдЪрд▓рд╛рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА FPGA рдореЗрдВ рд╕рдм рдХреБрдЫ рд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рд╣рдо рдХрд┐рд╕реА рдмрд╛рд╣рд░реА рдЧреНрд░рд╛рд╣рдХ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд┐рд╕реНрдЯрдо рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рддрд░рд╣ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ред рдореИрдВ рдЕрдиреБрднрд╡ рд╕реЗ рдЬрд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рд╡реЗ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рд╣рдореЗрдВ рдлреЛрди рдХрд░рддреЗ рдереЗ рдФрд░ рдХрд╣рддреЗ рдереЗ рдХрд┐ рдХреБрдЫ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд╣рдо рд╕рд▓рд╛рдЦреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╛рдж рджрд┐рд▓рд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рдорджрдж рдХрд░реЗрдЧрд╛ред рд▓реЗрдХрд┐рди рд╣рдо рдПрдХ рдЖрдВрддрд░рд┐рдХ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдХрд░реЗрдВрдЧреЗред рдпрд╣реА рд╣реИ, рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░, рдпрд╣ рдЕрдиреБрдордд рд╣реИред
рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдирдИ рдЪреБрдиреМрддрд┐рдпрд╛рдВ рдЖрддреА рд╣реИрдВред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 60 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдХреА рдЖрд╡реГрддреНрддрд┐ рд╣реИ, рдФрд░ рдПрд╕рдбреАрдЖрд░рдПрдПрдо рдШрдбрд╝реА рдмреНрд▓реЙрдХ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ 50 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдХреА рдЖрд╡реГрддреНрддрд┐ рд╕реЗ рдХрд╕рдХрд░ рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рдВ, рдореИрдВрдиреЗ рдЬрд╛рдВрдЪ рдХреА, 60 рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЪрд▓реЛ рдмрд╣рд╛рдирд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдЕрдиреБрдореЗрдп рдореЛрдб рд╕реЗ рдЖрдЧреЗ рдирд╣реАрдВ рдЬрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред рдмрд╛рдж рдХреЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ рдореИрдВ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рд╣рд╛рд░реНрдб рдмреНрд▓реЙрдХ рдХреЛ рдХреИрд╕реЗ рдмрджрд▓рд╛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдЖрдЬ рд╣рдо рдпрд╣реА рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЪреВрдВрдХрд┐ SDRAM рдХреА рд╣рдорд╛рд░реА рдШрдбрд╝реА рдЗрдХрд╛рдИ рдЙрдкрдпреЛрдЧ рдХреА рдЧрдИ рдЖрд╡реГрддреНрддрд┐ рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕реЗ SDRAM рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджреЗрддреЗ рд╣реИрдВред рдХрд╛рд░реНрдпрдХреНрд░рдо рдФрд░ рдЗрд╕рдХрд╛ рдбреЗрдЯрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ FPGA рдХреА рдЖрдВрддрд░рд┐рдХ рдореЗрдореЛрд░реА рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрдЧрд╛ред рдпрд╣ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рддреМрд░ рдкрд░ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдХрд┐ рдЖрдЬ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ, FPGAs рдЗрд╕ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо 28 рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ рд░реИрдо рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЖрдк рд╡реЙрд▓реНрдпреВрдо рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рджреЛ рдХреА рдХрдИ рд╢рдХреНрддрд┐рдпрд╛рдБ рдирд╣реАрдВ ...
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдорд╛рдирдХ рдШрдбрд╝реА рдФрд░ рд░реАрд╕реЗрдЯ рдпреВрдирд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдпрд╣ рдПрд╕рдбреАрдЖрд░рдПрдПрдо рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╕реЗ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд░реАрд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдЦ рдХреЛ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЗрд╕ рддрдереНрдп рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдКрдВрдЧрд╛ рдХрд┐ рд╡рд┐рдХрд╛рд╕ рдХреЗ рддрд╣рдд рдкреНрд░рдгрд╛рд▓реА рд╣рдореЗрд╢рд╛ рдбрд┐рдмрдЧрд░ рдХреЗ рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧреА, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдбреАрдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП JTAG рд╕рдмрд╕рд┐рд╕реНрдЯрдо рд╕реЗ рд░реАрд╕реЗрдЯ рд╢реБрд░реВ рдХрд░реВрдВрдЧрд╛ред
рдХреБрд▓ рдореЗрдВ, рд╣рдореЗрдВ рдмреЗрд╕ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдРрд╕рд╛ рд╕реНрдХреЗрдЪ рдорд┐рд▓рддрд╛ рд╣реИ (рдлрд┐рд▓рд╣рд╛рд▓ рд╕рдмрд╕реЗ рдореБрд╢реНрдХрд┐рд▓ рд░реАрд╕реЗрдЯ рд▓рд╛рдЗрди рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рд╣реЛрддреА рд╣реИ, рд╕рд┐рдЧреНрдирд▓ рд╕реНрд░реЛрдд рдкрд░ рдиреАрд▓рд╛ рдорд╛рд░реНрдХрд░ рд╣реЛрддрд╛ рд╣реИ):

рдЬрд╣рд╛рдВ рдЖрд╡реГрддреНрддрд┐ рдХреЛ рдШрдбрд╝реА рдФрд░ рд░реАрд╕реЗрдЯ рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

рдФрд░ RAM рдХреЗ рд▓рд┐рдП - рдЖрдпрддрди:

рдЖрдЬ рд╣рдореЗрдВ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдкрд╛рда рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдмреНрд▓реЙрдХ рдХреЛ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЬреЛрдбрд╝ рджреЗрдВрдЧреЗ:

рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рд╕рд╛рде, рд╣рдо рдкреНрд░рд┐рдВрдЯрдл рдХреЗ рд╕рдорд╛рди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред AVALON_MM рдмрд╕ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕реЗ рдЗрдВрдЯрд░рдкреНрдЯ рдЕрдиреБрд░реЛрдз рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рднреА рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдпрд╣реА рд╣реИ, рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдЦрд░реАрдж рдкреВрд░реА рд╣реЛ рдЧрдИ рд╣реИред рдпрд╣ рд╣рдорд╛рд░реА рдЗрдХрд╛рдИ рдХреЛ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред рд╡рд╣ рдбреЗрдЯрд╛ рдХрд╣рд╛рдВ рднреЗрдЬреЗрдЧрд╛? рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрдкрд▓рдмреНрдз рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ, рдПрдХ рдмрд╣реБрдд рд╣реА рджрд┐рд▓рдЪрд╕реНрдк рджреЛ-рдкреЛрд░реНрдЯ рдлреАрдлреЛ рдореЗрдореЛрд░реА рд╣реИред рдЗрд╕рдХрд╛ рдЖрдХрд░реНрд╖рдг рдЗрд╕ рддрдереНрдп рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ рдХрд┐ рдПрдХ рдкреЛрд░реНрдЯ рдХреЛ
рдПрд╡рд▓реЙрди -рдПрд╕рдЯреА рдореЛрдб рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╣рдорд╛рд░реА рдЗрдХрд╛рдИ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛
рдПрд╡рд▓реЙрди_рдПрдордПрдо рдореЛрдб рдореЗрдВ рдФрд░ рдПрдирдЖрдИрдУрдПрд╕ II рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдЕрджреНрднреБрдд рдмреНрд▓реЙрдХ рдпрд╣рд╛рдБ рд╕реНрдерд┐рдд рд╣реИ:

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕реЗрдВ рд╣реИрдВ (рдПрдХ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рджреВрд╕рд░реА рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП), рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рджреЛ рдлреАрдлреЛ рдмреНрд▓реЙрдХ рднреА рдЪрд╛рд╣рд┐рдПред рдЕрдм рдореИрдВ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реВрдВ, рд╣рдо рд╡реЗрдм рдХреЗ рджреЛ рдХрд┐рд▓реЛрдореАрдЯрд░ (рдФрд░ рдЪрд┐рддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдкрд╛рда рд╕реНрдХреНрд░реАрди рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛) рдХреЛ рд╣рд╡рд╛ рджреЗрддреЗ рд╣реИрдВ, рдФрд░ рджреВрд╕рд░реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ "рдпрд╣ рд╕рд╛рджреГрд╢реНрдп рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ", рдХреЗрд╡рд▓ рдЕрдВрддрд░ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЕрднреА рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдмреНрд▓реЙрдХ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред рдмрд╣реБрдд рд╕рд╛рд░реА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реИрдВред рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ рддрд╛рдХрд┐ рд╣рд░ рдХреЛрдИ рд▓реЗрдЦ рдХреЛ рд╕рдВрджрд░реНрдн рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЪрд╛рдирдХ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдорд┐рд▓рддреА рд╣реИ рдЬрд┐рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдиреЗрдЯрд╡рд░реНрдХ (рдФрд░ рдЗрд╕рд▓рд┐рдП, рд▓реЗрдЦ) рддрдХ рдкрд╣реБрдВрдЪ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдЗрд╕рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдЬреЛрдбрд╝реВрдВрдЧрд╛ред рдкрд╣рд▓реЗ рд╕реНрдкрд╖реНрдЯ, рдлрд┐рд░ - рдЬреИрд╕рд╛ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдХреА рдорд╛рдВрдЧ рд╣реИ, рдмрд╛рд░-рдмрд╛рд░ рд╕рдВрд╡рд╛рдж рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓рд╛рдПрдВред рддреЛ рд╣рд░ рдХреЛрдИ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдорд╣рд╕реВрд╕ рдХрд░реЗрдЧрд╛ рдФрд░ рдХрд┐рд╕реА рднреА рд╕рдордп рдЗрд╕реЗ рджреЛрд╣рд░рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред So. рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рджреА рдЧрдИрдВ:

рдореИрдВ рдЕрдм FIFO рдХрд░реВрдВрдЧрд╛, рдЬреЛ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рд╕реЗ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░
рдПрд╡рд▓реЙрди-рдПрдордПрдо рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдкрд╣рд▓рд╛ рд╕рдВрдкрд╛рджрди рдЗрд╕ рддрд░рд╣ рд╣реЛрдЧрд╛:

рдореБрдЭреЗ рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓реА:

рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЬрдм рдкреЛрд░реНрдЯ рдореЗрдВ рд╕реЗ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдореЗрдореЛрд░реА рдкрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рдХреА рдЪреМрдбрд╝рд╛рдИ 32 рдмрд┐рдЯреНрд╕ рдХреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 8-рдмрд┐рдЯ рдмрд╕ рд╣реИред рдереЛрдбрд╝реА рдЧрд╣рд░рд╛рдИ рдкрд░ рдХреИрд╕реЗ рд╕рд╣рдордд рд╣реЛрдВ, рдореИрдВ рдЖрдкрдХреЛ рдереЛрдбрд╝рд╛ рдХрдо рдмрддрд╛рдКрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрднреА рд╣рдо рдпрд╣рд╛рдВ рдЖрда-рдмрд┐рдЯ рдЪрд░рд┐рддреНрд░ рдХреЗ рд╕рд╛рде 32-рдмрд┐рдЯ рдмрд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдареАрдХ рд╣реИ, рдмреИрдЪ рдореЛрдб рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ, рдЬреИрд╕рд╛ рдХрд┐ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рднрд╛рдЧ рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдЖрдЧреЗ рдХреНрд╖рдорддрд╛ рд╣реИред рдорд╛рди рд▓реЗрдВ рдХрд┐ рдореИрдВ 256 рд╢рдмреНрдж (рдпрд╛рдиреА, 1024 рдмрд╛рдЗрдЯреНрд╕) рдХреЛ рдХрддрд╛рд░рдмрджреНрдз рдХрд░рддрд╛ рд╣реВрдВ:

рдЕрдм рд╕реНрдЯреЗрдЯрд╕ред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорд╣рддреНрд╡ рдирд╣реАрдВ рджрд┐рдпрд╛, рдФрд░ рдореБрдЭреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдХрд╕рдХрд░ рдЬрдорд╛ рджрд┐рдпрд╛ред рдЗрд╕рд▓рд┐рдП рдЕрдм рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдерд┐рддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рд╣рдо рдЖрдЙрдЯрдкреБрдЯ рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕реНрдЯреЗрдЯрд╕ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред

рдФрд░ рддреНрд░реБрдЯрд┐ рдХреЛ рдкрдХрдбрд╝реЗрдВ:

рддреЛ рдареАрдХ рд╣реИред рдбрдмрд▓ рдХреНрд▓реЙрдХрд┐рдВрдЧ рдЬреЛрдбрд╝реЗрдВред рджреЛрдиреЛрдВ рдЗрдирдкреБрдЯреНрд╕ рдХреЛ рдПрдХ рд╣реА рдХреНрд▓реЙрдХ рд▓рд╛рдЗрди рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реИред
Ufffред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрд▓:

рд▓реЗрдХрд┐рди рдЗрд╕ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдгрд╛рд▓реА рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рдмрд╣реБрдд рдЬрд▓реНрджреА рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛, 8-рдмрд┐рдЯ
рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдмреНрд▓реЙрдХ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддреА рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ 32-рдмрд┐рдЯ рд╡рд╛рд▓рд╛ рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рдо рдХреИрд╕реЗ рд╣реЛ? рдЕрдкрдиреЗ рдмреНрд▓реЙрдХ рдХреЛ рдлрд┐рд░ рд╕реЗ рддреИрдпрд╛рд░ рдХрд░реЗрдВ? рдирд╣реАрдВ! рд╣рдорд╛рд░реЗ рд╕рд╛рдордиреЗ рд╕рдмрдХреБрдЫ рд╣реЛ рдЧрдпрд╛ рд╣реИред рдпрд╣рд╛рдБ рд╡рд╣ рд╣реИ рдЬреЛ рд╣рдорд╛рд░реА рдорджрдж рдХрд░реЗрдЧрд╛:

рдЗрд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЪреВрдВрдХрд┐ рдпрд╣ рдПрдХ рдкрд░рдд рд╣реИ, рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рд╕реБрдВрджрд░рддрд╛ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЗрд╕реЗ рдЕрдкрдиреЗ рдмреНрд▓реЙрдХ рдФрд░ FIFO рдХреЗ рдмреАрдЪ рд░рдЦрддреЗ рд╣реИрдВ, рдЗрд╕реА рддреАрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП:

рд╣рдо рдирд┐рдореНрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд░рддреЗ рд╣реИрдВ: рдЗрдирдкреБрдЯ рдкрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 8-рдмрд┐рдЯ рдмрд╕ рд╣реИ, 32-рдмрд┐рдЯ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ред рдкреИрдХреЗрдЯ рд╕рдВрдХреЗрддреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ,
рддреИрдпрд╛рд░ рдФрд░
рд╡реИрдз рд╕рдВрдХреЗрддреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдпрд╣ рдПрдХ рд╡реЗрдм рдмреБрдирд╛рдИ рдХрд╛ рд╕рдордп рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рд▓рд╛рдЗрдиреЗрдВ рдмрд┐рдЫрд╛рдКрдВрдЧрд╛ (рдЪрд┐рддреНрд░ рдореЗрдВ рд╡реЗ рджреЛрдиреЛрдВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдорд╛рд░реНрдХрд░ рдбреЗрдЯрд╛ рд░рд┐рд╕реАрд╡рд░реНрд╕ рдкрд░ рд╣реИрдВ):

рдпрд╣реА рд╣реИ, рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдХ рдХреЗ рд╕реНрд░реЛрдд рд╕реЗ рд╕рд┐рдЧреНрдирд▓ рдПрдбрд╛рдкреНрдЯрд░ рдХреЗ рдЗрдирдкреБрдЯ рдкрд░ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдПрдбрд╛рдкреНрдЯрд░ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ FIFO рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдПред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд╣рд╛, рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рд╕рднреА рдХрдиреЗрдХреНрд╢рди рдПрдХ рдмрд┐рдВрджреБ рд╕реЗ рджреВрд╕рд░реЗ рдмрд┐рдВрджреБ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВред
рдареАрдХ рд╣реИ, рдЕрдм рд╣рдо рд░реАрд╕реЗрдЯ рд▓рд╛рдЗрдиреЛрдВ, рдШрдбрд╝реА рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд▓рдЯрдХрд╛рддреЗ рд╣реИрдВ, рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдмрд╕ рдореЗрдВ рдФрд░ рдмрд╛рдзрд╛ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ ...

рдЦреИрд░ ... рдФрд░ рдЕрдм, рдЗрд╕реА рд╕рд┐рджреНрдзрд╛рдВрдд рд╕реЗ, рд╣рдо
FT245SYNC рдХреЛ рдбреЗрдЯрд╛ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП FIFO
рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ ред рдХреЗрд╡рд▓ рд╡рд╣рд╛рдБ, рдбреЗрдЯрд╛ 32-рдмрд┐рдЯ рд░реВрдк рдореЗрдВ
рдПрд╡рд▓реЙрди-рдПрдордПрдо рд╕реЗ FIFO рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИред рд╡реЗ 32-рдЗрди -8 рдЕрдбреИрдкреНрдЯрд░ рд╕реЗ рдЧреБрдЬрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдХ рдХреЗ SINK рдЗрдирдкреБрдЯ рдкрд░ рдкрд╣реБрдВрдЪрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рд╡рд░реНрддрдорд╛рди рд╕рд░реНрдХрд┐рдЯ рд╕реЗ рдЬреБрдбрд╝рд╛ рдирд╣реАрдВ рд╣реИ ... рд╣рдореЗрдВ рдЕрдВрддрд┐рдо рд╕рд░реНрдХрд┐рдЯ рдХрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЯреБрдХрдбрд╝рд╛ рдорд┐рд▓рддрд╛ рд╣реИ (рдПрдХ рд╣реА рдШрдбрд╝реА рдХреЗ рд╕рд╛рде рд╡рд╣рд╛рдВ рдХреА рдореЗрдореЛрд░реА рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдИ):

рдЖрдЧреЗ рдХреА рдФрдкрдЪрд╛рд░рд┐рдХрддрд╛рдПрдВ рдЬреЛ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ (
рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рдЧ - рдЗрд╕ рдПрдХ рдореЗрдВ ) рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ
рдирд┐рднрд╛рдИ рд╣реИрдВ ред рд╣рдо рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛ рд╡реИрдХреНрдЯрд░ рд╕реМрдВрдкрддреЗ рд╣реИрдВред рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рд╣рдо рдЗрдВрдЯрд░рдкреНрдЯ рдирдВрдмрд░реНрд╕ рдФрд░ рдПрдбреНрд░реЗрд╕ рдХрд╛ рдСрдЯреЛрдореИрдЯрд┐рдХ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХрд╣рддреЗ рд╣реИрдВред рд╣рдо рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдмрдЪрд╛рддреЗ рд╣реИрдВ ... рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдпрд╛рдж рд╣реИ рдХрд┐ рд╕рд╣реЗрдЬреЗ рдЧрдП рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдирд╛рдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЗ рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдкрд░ рд╣реЛ? рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдореЛрдЯрд╛ рдбреНрд░рд╛рдлреНрдЯ рдмрдирд╛рдПрдВ, рдкреИрд░ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВрдиреЗ рдзреЛрдЦрд╛ рджрд┐рдпрд╛: рдореИрдВрдиреЗ рдбреНрд░рд╛рдлреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА * .qsf рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд▓реЗрдХрд░ рд╡рд░реНрддрдорд╛рди рдлрд┐рдирд┐рд╢рд┐рдВрдЧ рддрдХ (рдФрд░ рдЖрдк рдореЗрд░рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд * .qsf рд▓рд╛рдЗрдиреНрд╕ рдХреЛ рдХреЙрдкреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдк рдмрд╕ рдЬреАрдпреВрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рднреА рдЯрд╛рдВрдЧреЛрдВ рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ) рдХреА рдирдХрд▓ рдХреАред рдореИрдВ рдЗрд╕ рддрдереНрдп рдкрд░ рд╡рд┐рд╢реЗрд╖ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдкрд┐рдЫрд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рддрд░рд╣, clk рд╕рдВрдХреЗрдд рдкреИрд░ 23 рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, 25 рдирд╣реАрдВред рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣рд╛рдВ рд╣рдо FT2232 рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдЯрд┐рдХ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рд╡рд╛рд╣! рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рддреИрдпрд╛рд░ рд╣реИред рд╣рдо рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдХрд╣рд╛рдВ рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ? рдЖрдЬ рдпрд╣ рдкреНрд░рд╢реНрди рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рд╣рдо NIOS II рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реЗ рд╢реБрд░реБрдЖрдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ FT2232 рдХреЛ 245-SYNC рдореЛрдб рдореЗрдВ рдбрд╛рд▓рдирд╛ рд╣реЛрдЧрд╛, рддрднреА рд╣рдорд╛рд░реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХреНрд▓реЙрдХ рджрд╛рд▓ рдорд┐рд▓реЗрдЧреАред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
рд╣рдореЗрдВ рдРрд╕рд╛ рдХреБрдЫ рдорд┐рд▓рддрд╛ рд╣реИ: #include <cstdio> #include <sys/time.h> #include <unistd.h> #include "ftd2xx.h" FT_HANDLE OpenFT2232H() { FT_HANDLE ftHandle0; static FT_DEVICE ftDevice; // int nDevice = 0; while (true) { // if (FT_Open(nDevice, &ftHandle0) != FT_OK) { printf("No FT2232 found\n"); // , return 0; } // ? if (FT_GetDeviceInfo(ftHandle0, &ftDevice, NULL, NULL, NULL, NULL) == FT_OK) { // , if (ftDevice == FT_DEVICE_2232H) { // , AN130 FT_SetBitMode(ftHandle0, 0xff, 0x00); usleep(1000000); //Sync FIFO mode FT_SetBitMode(ftHandle0, 0xff, 0x40); FT_SetLatencyTimer(ftHandle0, 2); FT_SetUSBParameters(ftHandle0, 0x10000, 0x10000); return ftHandle0; } } // FT_Close(ftHandle0); // nDevice += 1; } printf("No FT2232 found\n"); } int main() { FT_HANDLE ftHandle0 = OpenFT2232H(); if (ftHandle0 == 0) { printf("Cannot open device\n"); return -1; } int item; bool bWork = true; while (bWork) { printf("1 - Send 16 bytes\n"); printf("2 - Send 256 bytes\n"); printf("3 - Receive loop\n"); printf("0 - Exit\n"); scanf("%d", &item); switch (item) { case 0: bWork = false; break; case 1: { static const unsigned char data[0x10] = { 0x00,0x01,0x02,0x03, 0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f }; DWORD dwWritten; FT_Write(ftHandle0, (void*)data, sizeof(data), &dwWritten); } break; case 2: { unsigned char data[0x100]; for (size_t i = 0; i < sizeof(data); i++) { data[i] = (unsigned char)i; } DWORD dwWritten; FT_Write(ftHandle0, (void*)data, sizeof(data), &dwWritten); } break; case 3: { DWORD dwRxBytes; DWORD dwRead; DWORD buf[0x100]; while (true) { FT_GetQueueStatus(ftHandle0, &dwRxBytes); if (dwRxBytes != 0) { printf("Received %d bytes (%d DWORDs)\n", dwRxBytes, dwRxBytes / sizeof(buf[0])); if (dwRxBytes > sizeof(buf)) { dwRxBytes = sizeof(buf); } FT_Read(ftHandle0, buf, dwRxBytes, &dwRead); for (DWORD i = 0; i < dwRxBytes / sizeof(buf[0]);i++) { printf("0x%X, ",buf[i]); } printf("\n"); } } } break; } } // , FT_Close(ftHandle0); return 0; }
рдлрд╝рдВрдХреНрд╢рди OpenFT2232H () рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рд╕реЗ рд╣рдореЗрдВ рдкрд░рд┐рдЪрд┐рдд рд╣реИ ред рдпрд╣ рд╡рд╣ рд╣реИ рдЬреЛ FT2232 рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЦреЛрд▓рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЙрд╕ рдореЛрдб рдореЗрдВ рдбрд╛рд▓рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЬрд╝рд░реВрд░рдд рд╣реИред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рдлрд▓ рдкреНрд░рдХреНрд╖реЗрдкрдг рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж, рд╣рдореЗрдВ рдШрдбрд╝реА рдХреА рджрд╛рд▓ рдорд┐рд▓рддреА рд╣реИ, рдФрд░ рдЙрдирдХреЗ рд╕рд╛рде NIOS II рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред рдЦреИрд░, рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдПрдХ рдорд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд░рд▓ рд╣реИред рдХреБрдЫ рдбреЗрдЯрд╛ (1) рднреЗрдЬреЗрдВ, рдмрд╣реБрдд рд╕рд╛рд░рд╛ рдбреЗрдЯрд╛ (2) рднреЗрдЬреЗрдВ, рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ (3)ред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕рднреА рдбреЗрдЯрд╛ рдЪрд╛рд░ рдмрд╛рдЗрдЯреНрд╕ рдХреЗ рдЧреБрдгрдХреЛрдВ рд╡рд╛рд▓реЗ рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВред рдпрд╣ рд╕рдм рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 8-рдЗрди -32 рдЕрдбреИрдкреНрдЯрд░ рд╣реИред рдЗрд╕рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдкрд░, рдбреЗрдЯрд╛ рдХреЛ рджреЛрд╣рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрдиреНрдпрдерд╛, рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реИредNIOS II рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ BSP рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рд╕реНрдореЙрд▓ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╣реА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдирд╛рддрд╛ рд╣реВрдВред рдмреАрдПрд╕рдкреА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ рд▓рд╛рд▓ рд░рдВрдЧ рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдХреИрд╕реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдмреАрдПрд╕рдкреА рдХреЛ рдХреИрд╕реЗ рд╕рд╣реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕ рдкрд░ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдереА )ред рдореБрдЭреЗ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рдирд╛ рд╣реИ рдХрд┐ рдореИрдВ рдкреЗрдбрд╝ рдХреА рдЬрдбрд╝ рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реВрдВ, рдЕрд░реНрдерд╛рддреН, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рддрддреНрд╡, рддрд╛рдХрд┐ рд╕рднреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рддреБрд░рдВрдд рджрд╛рдИрдВ рдУрд░ рджрд┐рдЦрд╛рдИ рджреЗрдВред
рдЕрдЧрд▓рд╛, рдмрд╕рдкрд╛ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ рдФрд░, рдЕрдкрдиреА рдЖрджрдд рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдореИрдВ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо hello_world_small.c рдХреЛ hello_world_small.cpp рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ , рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдореИрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╕рд╛рдл рдХрд░рддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдЗрд╕ рдирд╛рдо рдмрджрд▓рдиреЗ рд╕реЗ рдХреЛрдИ рдкреНрд░реЗрд░рд┐рдд рддреНрд░реБрдЯрд┐рдпрд╛рдБ рди рд╣реЛрдВредрдореИрдВ рдХрд╛рдлреА рд╕рддрд╣реА рд░реВрдк рд╕реЗ рдХрд╛рд░реНрдп рдХрд╛ рд╕рддреНрдпрд╛рдкрди рдХрд░реВрдВрдЧрд╛ (рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░реАрдХреНрд╖рдХ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ FIFO рдЖрдХрд╛рд░ рд╕реЗ рдЕрдзрд┐рдХ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рд▓реЗрдЦ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдореВрд▓ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ рджрд┐рдЦрд╛рдирд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдкрдиреЗ рдкрд╛рдЧрд▓ рдЖрдХрд╛рд░ рдХреЗ рдХрд╛рд░рдг рдкрдврд╝рдиреЗ рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред рдФрд░ рдореИрдВ рдореВрд▓ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ рджреЛ рдЪрд░рдгреЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ред рдкрд╣рд▓рд╛ рдХрджрдо рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕реЗ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдХреЛ рдПрдирдЖрдИрдУрдПрд╕ II рдореЗрдВ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛: extern "C" { #include "sys/alt_stdio.h" #include <system.h> #include <altera_avalon_fifo_util.h> } #include <stdint.h> int main() { while (1) { int level = IORD_ALTERA_AVALON_FIFO_LEVEL(FIFO_0_OUT_CSR_BASE); if (level != 0) { alt_printf("0x%x words received:\n",level); for (int i=0;i<level;i++) { alt_printf("0x%x,",IORD_ALTERA_AVALON_FIFO_DATA (FIFO_0_OUT_BASE)); } alt_printf("\n"); } } /* Event loop never exits. */ while (1); return 0; }
рдпрд╣ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдбреЗрдЯрд╛ рдХреЗ FIFO рдореЗрдВ рдЖрдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реИред рдпрджрд┐ рд╡реЗ рд╡рд╣рд╛рдВ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИредрдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╣реЛ рд░рд╣реА рд╣реИред рдкрд╣рд▓реЗ, рдореИрдВ рдпрд╣ рджрд┐рдЦрд╛рд╡рд╛ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдореИрдВ рдЯрд╛рдЗрдорд┐рдВрдЧ рд╢реБрд░реВ рдХрд░рдирд╛ рднреВрд▓ рдЧрдпрд╛ред рдЗрд╕рд▓рд┐рдП, Redd рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ FPGA "рдлрд░реНрдорд╡реЗрдпрд░" рд▓реЛрдб рдХрд░рддрд╛ рд╣реВрдВ, рдлрд┐рд░ рдореИрдВ NIOS II рдХреЗ рд▓рд┐рдП рдбрд┐рдмрдЧрд┐рдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВред рдореБрдЭреЗ рдпрд╣ рд╕рдВрджреЗрд╢ рдорд┐рд▓рд╛:
рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рдорд╛рди рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рджреЗрдЦрдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рднреВрд▓ рдЧрдП рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдм рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдкрд╣рдЪрд╛рдиреЗрдВред рдФрд░ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЙрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдФрд░ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдерд╛ред рдЬреИрд╕реЗ рд╣реА рдпрд╣ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ FT2232 рдкреБрд▓ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рддрд╛ рд╣реИ, рдХреНрд▓реЙрдХ рджрд╛рд▓ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рдЪрд▓реА рдЬрд╛рдПрдЧреА, рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рджреЛрд╣рд░рд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЙрд╕ рд╕рдордп рддрдХ рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рдкреВрд░рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдШрдбрд╝реА рдХреА рджрд╛рд▓ рдХрд╣реАрдВ рдирд╣реАрдВ рдЬрд╛рдПрдЧреА: рдкреБрд▓ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА FT245-SYNC рдореЛрдб рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ редрдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ, рдкреНрд░реЗрд╕ 1. рд╕реНрдерд┐рддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдпрд╛ рддреЛ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ:0x2 рд╢рдмреНрдж рдкреНрд░рд╛рдкреНрдд:
0x3020100,0x7060504,
0x2 рд╢рдмреНрдж рдкреНрд░рд╛рдкреНрдд рд╣реБрдП:
0xb0a0908,0xf0e0d0c,рдпрд╛:0x3 рд╢рдмреНрдж рдкреНрд░рд╛рдкреНрдд:
0x3020100,0x7060504,0xb0a0908,
0x1 рд╢рдмреНрдж рдкреНрд░рд╛рдкреНрдд:
0xf00000c,рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, 1, рдлрд┐рд░ 3 рджреЛрд╣рд░реЗ рд╢рдмреНрдж рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд╕рд╛рде рдРрд╕рд╛ рдирд╣реАрдВ рд╣реБрдЖред рдпрд╣ рд╕рдм рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкрд╣рд▓рд╛ рдкреНрд░рджрд░реНрд╢рди рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдмрд╕ рдореЗрдВ рдХрд┐рддрдиреЗ рдмрд╛рдЗрдЯреНрд╕ рдЪрд▓рд╛рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред рдФрд░ рдЕрдЧрд░ рдпрд╣ рд╢реБрд░реВ рд╣реБрдЖ, рддреЛ рдЗрд╕рдХреЗ рдЕрдВрдд рддрдХ рдЕрдиреНрдп рд╕рднреА рдмрд╛рдЗрдЯреНрд╕ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХрд╛ рд╕рдордп рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ JTAG рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдПрдХ рддреЗрдЬрд╝ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдмрд╕ рдкреИрдХреЗрдЯ рдХреЗ рд╕рдВрдХреЗрддреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рддреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗрд╡рд▓ рдкреИрдХреЗрдЯ рдХреЗ рд░рд┐рд╕реЗрдкреНрд╢рди рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдкрд░ рдбреЗрдЯрд╛ рдХреЛ рджреЗрдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ (рдЕрднреА рддрдХ рдХреЛрдИ рдкреИрдХреЗрдЯ рдирд╣реАрдВ рд╣реИ, рдореБрдЭреЗ рдЗрд╕реЗ рдХреНрдпреЛрдВ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП? рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрджрд┐ рдкреИрдХреЗрдЯ рдХреНрд╖рдгрднрдВрдЧреБрд░ рд╣реИ), рдХреБрдЫ рдореЗрдВ рдпрд╣ рдЦрд░рд╛рдм рд╣реИ (рдПрдлрдЖрдИрдПрдлрдУ рдПрдХ рдмреНрд▓реИрдХ рдмреЙрдХреНрд╕ рд╣реИ, рдЕрдВрддрд┐рдо рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдХреЛ рдПрдбреНрд░реЗрд╕ рд░реИрдо рдкрд░ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдпрд╣ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдмреЗрд╣рддрд░ рд╣реИред )редрдкреНрд░реЗрд╖рд┐рдд рдбреЗрдЯрд╛ рдХреЛ рд▓рд┐рдЯрд┐рд▓ рдПрдВрдбрд┐рдпрди рдЕрдВрдХрди рдореЗрдВ рджреЛрд╣рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдирд┐рдореНрди рд╕рд░рдгреА рдкрд╛рд╕ рд╣реИ: static const unsigned char data[0x10] = { 0x00,0x01,0x02,0x03, 0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f };
рдпрд╣ рд╕рд╣реА рд╣реИред
рдпрджрд┐ рдЖрдк рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдЖрдЗрдЯрдо 2 рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ (рдкрдврд╝рдиреЗ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рд▓рд┐рдП, рд▓реЗрдЦ рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╕рдордп рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ): 0x3 words received: 0x3020100,0x7060504,0xb0a0908, 0x3d words received: 0xf0e0d0c, 0x13121110,0x17161514,0x1b1a1918,0x1f1e1d1c, 0x23222120,0x27262524,0x2b2a2928,0x2f2e2d2c, 0x33323130,0x37363534,0x3b3a3938,0x3f3e3d3c, 0x43424140,0x47464544,0x4b4a4948,0x4f4e4d4c, 0x53525150,0x57565554,0x5b5a5958,0x5f5e5d5c, 0x63626160,0x67666564,0x6b6a6968,0x6f6e6d6c, 0x73727170,0x77767574,0x7b7a7978,0x7f7e7d7c, 0x83828180,0x87868584,0x8b8a8988,0x8f8e8d8c, 0x93929190,0x97969594,0x9b9a9998,0x9f9e9d9c, 0xa3a2a1a0,0xa7a6a5a4,0xabaaa9a8,0xafaeadac, 0xb3b2b1b0,0xb7b6b5b4,0xbbbab9b8,0xbfbebdbc, 0xc3c2c1c0,0xc7c6c5c4,0xcbcac9c8,0xcfcecdcc, 0xd3d2d1d0,0xd7d6d5d4,0xdbdad9d8,0xdfdedddc, 0xe3e2e1e0,0xe7e6e5e4,0xebeae9e8,0xefeeedec, 0xf3f2f1f0,0xf7f6f5f4,0xfbfaf9f8,0xfffefdfc,
рд╕рдм рдХреБрдЫ рд╕рдЪ рднреА рд╣реИред рд╣рдо рд░рд┐рд╡рд░реНрд╕ рдЧрд┐рдпрд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред рд╣рдо рдЗрд╕ рдХреЗ рд╕рд╛рде NIOS II рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рдЬрдЧрд╣ рд▓реЗрддреЗ рд╣реИрдВ: /* - 2 */ uint32_t buf[] = {0x11223344,0x55667788,0x99aabbcc,0xddeeff00}; for (uint32_t i=0;i<sizeof(buf)/sizeof(buf[0]);i++) { IOWR_ALTERA_AVALON_FIFO_DATA (FIFO_1_IN_BASE,buf[i]); }
рд╣рдо рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдкреЙрдЗрдВрдЯ 3 рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдПрдирдЖрдИрдУрдПрд╕ II рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЪрд▓рд╛рддреЗ рд╣реИрдВред рд╣рдордкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ
: 16 рдмрд╛рдЗрдЯреНрд╕ (4 DWORD) 0x11223344, 0x55667788, 0x99AABBCC, 0xDDEEFF00,рджреЛрдиреЛрдВ рдЪреИрдирд▓ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рд╣рдо рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдордп рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рджреЗрдЦ рд▓реЗрдВрдЧреЗредрдирд┐рд╖реНрдХрд░реНрд╖
рдпрд╣ рд▓реЗрдЦ рдПрд╡рд▓реЙрди-рдПрд╕рдЯреА рдмрд╕ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддрд╛ рд╣реИ ред рдЗрд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, FPGA рдореЗрдВ рд▓рд╛рдЧреВ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде Redd рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рдХрдиреЗрдХреНрд╢рди рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реИред рдкрд╛рдардХреЛрдВ рдХреЛ рдХреЗрдВрджреНрд░реАрдп рдФрд░ рд╕рд╣рд╛рдпрдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдмреАрдЪ рдмрд╛рддрдЪреАрдд рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рддрд░реАрдХрд╛ рдХрд╛ рдПрдХ рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓рд╛ред рдпрд╣рд╛рдВ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдмрдирд╛рдИ рдЧрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ редрд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдФрд░ рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдЬреНрдЮрд╛рди рдмрд╣реБрдд рдмреБрдирд┐рдпрд╛рджреА рд╣реИред рдмрд╛рдж рдХреЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ, рдпрд╣ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдХрд┐ рдЗрди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░реЗрдб рдмреЛрд░реНрдб рдкрд░ рд╕реНрдерд┐рдд рдЧрддрд┐рд╢реАрд▓ рд░реИрдо рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХреИрд╕реЗ рдмрдЪрд╛рдпрд╛ рдЬрд╛рдПред