Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Command Space Packet の Secondary Header を見直し,TLC や BC の実行方法を拡張する #547

Open
Tracked by #514 ...
meltingrabbit opened this issue Apr 12, 2023 · 2 comments
Assignees
Labels
enhancement New feature or request priority::high priorityg high

Comments

@meltingrabbit
Copy link
Collaborator

概要

Command Space Packet の Secondary Header を見直し,TLC や BC の実行方法を拡張する

詳細

close条件

実装されたら

@meltingrabbit
Copy link
Collaborator Author

現状

image

案1 APID にルーティングなどを持たせる

image

懸念

  • APID 枯渇
  • pack cmd の形(型)が微妙

案2 high order cmd (こっちが有力?)

image

懸念

  • GS 側の実装が大変

@meltingrabbit
Copy link
Collaborator Author

meltingrabbit commented Apr 12, 2023

C2A core 側の実装の問題

BCT

  • REGSTER_BCT コマンドを受領後,pack されている cmd を抽出し,それを BCT に格納
  • TI 情報は失われてしまうので,BCT の拡張(CCP と TI の両方の配列を保存する必要がある)
  • BCT 的には,header が短くなるので,メモリ状はとても有利になる!

TLC

  • だいぶ悩み
  • BCTのように pack cmd を抽出してもいいが,TIを保存する場所がない
    • PL をつかっているので,linked list (queue) としてのデータ構造では,CCPしか格納できない
  • ccp + TI のstruct を定義して,それの linked list をつくってもいいが,ちょっとだるい
  • また,PL は BCT とちがって,1 cmd につき(= queue entry につき) CCP_MAX_LEN だけメモリを確保してる
    • TI を別途持つと,めちゃくちゃRAM使用量が増える(32 bit x queue サイズ)
    • 一方で, CCP_MAX_LEN だけ確保してるので, pack cmd を抽出する前の, REGISTER_TLC Cmd のままでも queue に格納可能(こちらのほうがメモリ効率が良い)
  • とは言え 「REGISTER_TLC Cmd のままで queue にいれて,デキューじに pack cmd を抽出するのもそうではなくない? とういう気持ちに
    • 一旦これで実装して fixme?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request priority::high priorityg high
Projects
None yet
Development

No branches or pull requests

1 participant